]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
scripts: modpost: fix compilation warning
authorMichal Nazarewicz <mina86@mina86.com>
Sat, 26 Jul 2014 21:57:01 +0000 (07:27 +0930)
committerRusty Russell <rusty@rustcorp.com.au>
Sun, 27 Jul 2014 11:22:45 +0000 (20:52 +0930)
The scripts/mod/modpost.c triggers the following warning:

scripts/mod/modpost.c: In function ‘remove_dot’:
scripts/mod/modpost.c:1710:10: warning: ignoring return value of ‘strtoul’, declared with attribute warn_unused_result [-Wunused-result]

The remove_dot function that calls strtoul does not care about the
numeric value of the string that is parsed but only looks for the
end of the numeric sequence.  As such, it's equivalent to just skip
over all digits.

Signed-off-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
scripts/mod/modpost.c

index 9d9c5b905b359e58b9eb98eac457ef81d7f8179b..5ba203b9eddf90366bf05986c830eecc54c4b509 100644 (file)
@@ -1703,12 +1703,11 @@ static void check_sec_ref(struct module *mod, const char *modname,
 
 static char *remove_dot(char *s)
 {
-       char *end;
-       int n = strcspn(s, ".");
+       size_t n = strcspn(s, ".");
 
-       if (n > 0 && s[n] != 0) {
-               strtoul(s + n + 1, &end, 10);
-               if  (end > s + n + 1 && (*end == '.' || *end == 0))
+       if (n && s[n]) {
+               size_t m = strspn(s + n + 1, "0123456789");
+               if (m && (s[n + m] == '.' || s[n + m] == 0))
                        s[n] = 0;
        }
        return s;