linux-info.eclass: avoid lexicographical compare on numbers, bug #705248
authorSergei Trofimovich <slyfox@gentoo.org>
Fri, 22 May 2020 18:53:44 +0000 (19:53 +0100)
committerSergei Trofimovich <slyfox@gentoo.org>
Sat, 23 May 2020 22:59:04 +0000 (23:59 +0100)
Originally found in bug #705240 as:

```
  error=0
  ...
  if [[ ${error} > 0 ]]; then
  ...
```

'>' are string comparisons. They are benign in this case, but let's
be consistent and use integer comparison.

Closes: https://bugs.gentoo.org/705248
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
eclass/linux-info.eclass

index 44eebcf52a928f82bc28081464d257bf1e91f448..405ef5571e1c917b0927b8050be0d4b303296588 100644 (file)
@@ -813,7 +813,7 @@ check_extra_config() {
                        linux_chkconfig_present ${config} || error=1
                fi
 
-               if [[ ${error} > 0 ]]; then
+               if [[ ${error} -gt 0 ]]; then
                        local report_func="eerror" local_error
                        local_error="ERROR_${config}"
                        local_error="${!local_error}"
@@ -848,14 +848,14 @@ check_extra_config() {
                fi
        done
 
-       if [[ ${hard_errors_count} > 0 ]]; then
+       if [[ ${hard_errors_count} -gt 0 ]]; then
                eerror "Please check to make sure these options are set correctly."
                eerror "Failure to do so may cause unexpected problems."
                eerror "Once you have satisfied these options, please try merging"
                eerror "this package again."
                export LINUX_CONFIG_EXISTS_DONE="${old_LINUX_CONFIG_EXISTS_DONE}"
                die "Incorrect kernel configuration options"
-       elif [[ ${soft_errors_count} > 0 ]]; then
+       elif [[ ${soft_errors_count} -gt 0 ]]; then
                ewarn "Please check to make sure these options are set correctly."
                ewarn "Failure to do so may cause unexpected problems."
        else