From: lepton <yth...@gm...> - 2005-08-10 00:55:31
|
See the attach patch. We should return 0 on success. Now the "-e signal=xxxx" won't work without this patch (At least on the debian sarge version 4.5.8-1.2) diff -pru strace-4.5.8/syscall.c strace-4.5.8-lepton/syscall.c --- strace-4.5.8/syscall.c 2004-09-04 12:20:43.000000000 +0800 +++ strace-4.5.8-lepton/syscall.c 2005-08-09 17:50:03.000000000 +0800 @@ -311,10 +311,10 @@ qual_signal(s, opt, not) if (s && *s && isdigit((unsigned char)*s)) { qualify_one(atoi(s), opt, not); - return 1; + return 0; } if (strlen(s) >= sizeof buf) - return 0; + return -1; strcpy(buf, s); s = buf; for (i = 0; s[i]; i++) @@ -323,10 +323,10 @@ qual_signal(s, opt, not) s += 3; for (i = 0; i <= NSIG; i++) if (strcmp(s, signame(i) + 3) == 0) { - qualify_one(atoi(s), opt, not); - return 1; + qualify_one(i, opt, not); + return 0; } - return 0; + return -1; } static int |