]> granicus.if.org Git - strace/commitdiff
decode_select: do not allocate unused memory
authorDmitry V. Levin <ldv@altlinux.org>
Wed, 28 Jan 2015 01:26:04 +0000 (01:26 +0000)
committerDmitry V. Levin <ldv@altlinux.org>
Wed, 28 Jan 2015 01:26:04 +0000 (01:26 +0000)
* desc.c (decode_select): On entering syscall, do not allocate memory
in non-verbose mode.

desc.c

diff --git a/desc.c b/desc.c
index 491e9ba96b8cb24e801d88708373668d380ef1dc..24de51deddfc32f5ea39fc1215bec42d6c5dcbb6 100644 (file)
--- a/desc.c
+++ b/desc.c
@@ -338,7 +338,7 @@ decode_select(struct tcb *tcp, long *args, enum bitness_t bitness)
        if (entering(tcp)) {
                tprintf("%d", (int) args[0]);
 
-               if (fdsize > 0) {
+               if (verbose(tcp) && fdsize > 0) {
                        fds = malloc(fdsize);
                        if (!fds)
                                die_out_of_memory();
@@ -349,7 +349,7 @@ decode_select(struct tcb *tcp, long *args, enum bitness_t bitness)
                                tprints(", NULL");
                                continue;
                        }
-                       if (!verbose(tcp) || !fds) {
+                       if (!fds) {
                                tprintf(", %#lx", arg);
                                continue;
                        }