diff options
author | des <des@FreeBSD.org> | 2001-11-17 17:18:36 +0000 |
---|---|---|
committer | des <des@FreeBSD.org> | 2001-11-17 17:18:36 +0000 |
commit | 69c40b27049bc81be58ef63fff6de5bb32835980 (patch) | |
tree | 7195655e6930ec5c96268f96f2c5d1fcb03e863d /usr.bin | |
parent | 52b49c49f759581acc0e2d807464d90220654b94 (diff) | |
download | FreeBSD-src-69c40b27049bc81be58ef63fff6de5bb32835980.zip FreeBSD-src-69c40b27049bc81be58ef63fff6de5bb32835980.tar.gz |
Print the correct return code for successful Linux syscalls.
Submitted by: Vitezslav Novy <vita@fio.cz>
PR: 32036
MFC after: 1 week
Diffstat (limited to 'usr.bin')
-rw-r--r-- | usr.bin/truss/amd64-linux32.c | 3 | ||||
-rw-r--r-- | usr.bin/truss/i386-linux.c | 3 |
2 files changed, 4 insertions, 2 deletions
diff --git a/usr.bin/truss/amd64-linux32.c b/usr.bin/truss/amd64-linux32.c index 158bc95..27b964e 100644 --- a/usr.bin/truss/amd64-linux32.c +++ b/usr.bin/truss/amd64-linux32.c @@ -246,7 +246,8 @@ i386_linux_syscall_exit(int pid, int syscall) { if (retval == bsd_to_linux_errno[i]) break; } - print_syscall_ret(outfile, lsc.name, lsc.nargs, lsc.s_args, errorp, i); + print_syscall_ret(outfile, lsc.name, lsc.nargs, lsc.s_args, errorp, + errorp ? i : retval); clear_lsc(); return; } diff --git a/usr.bin/truss/i386-linux.c b/usr.bin/truss/i386-linux.c index 158bc95..27b964e 100644 --- a/usr.bin/truss/i386-linux.c +++ b/usr.bin/truss/i386-linux.c @@ -246,7 +246,8 @@ i386_linux_syscall_exit(int pid, int syscall) { if (retval == bsd_to_linux_errno[i]) break; } - print_syscall_ret(outfile, lsc.name, lsc.nargs, lsc.s_args, errorp, i); + print_syscall_ret(outfile, lsc.name, lsc.nargs, lsc.s_args, errorp, + errorp ? i : retval); clear_lsc(); return; } |