Fix kernel release string parsing
* strace.c (get_os_release): Handle "X.Y-something" utsname.release
strings properly.
Reported-by: Bryce Gibson <bryce@gibson-consulting.com.au>
diff --git a/strace.c b/strace.c
index 857136d..65dee7d 100644
--- a/strace.c
+++ b/strace.c
@@ -1432,8 +1432,14 @@
break;
while (*p >= '0' && *p <= '9')
p++;
- if (*p != '.')
+ if (*p != '.') {
+ if (rel >= KERNEL_VERSION(0,1,0)) {
+ /* "X.Y-something" means "X.Y.0" */
+ rel <<= 8;
+ break;
+ }
error_msg_and_die("Bad OS release string: '%s'", u.release);
+ }
p++;
}
return rel;