From: Dmitry V. Levin Date: Thu, 26 Nov 2015 18:25:34 +0000 (+0000) Subject: x86_64: fix x32 personality support in getllval X-Git-Tag: v4.11~100 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6974c91c02053b488efbfe9494feb232d151c909;p=strace x86_64: fix x32 personality support in getllval x86 is the only personality supported on x86_64 that has 32-bit syscall arguments. * util.c (getllval) [X86_64]: Fix current_personality == 2 case. --- diff --git a/util.c b/util.c index 68e82593..b63de9bb 100644 --- a/util.c +++ b/util.c @@ -237,7 +237,11 @@ getllval(struct tcb *tcp, unsigned long long *val, int arg_no) { #if SIZEOF_LONG > 4 && SIZEOF_LONG == SIZEOF_LONG_LONG # if SUPPORTED_PERSONALITIES > 1 +# ifdef X86_64 + if (current_personality != 1) { +# else if (current_wordsize > 4) { +# endif # endif *val = tcp->u_arg[arg_no]; arg_no++;