Merge branch 'rs/receive-pack-argv-leak-fix'
authorJunio C Hamano <gitster@pobox.com>
Mon, 20 Oct 2014 19:23:45 +0000 (12:23 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 20 Oct 2014 19:23:45 +0000 (12:23 -0700)
* rs/receive-pack-argv-leak-fix:
receive-pack: plug minor memory leak in unpack()

1  2 
builtin/receive-pack.c
index f2f6c67359cb5941c2d57b6692ce1fbbc86edccc,886eb70323523f88398e691011916afc287b0510..6420680bddcd4d9963f5b71e98b09ff5528ec42d
@@@ -1253,16 -932,17 +1252,16 @@@ static const char *unpack(int err_fd, s
  
        if (si->nr_ours || si->nr_theirs) {
                alt_shallow_file = setup_temporary_shallow(si->shallow);
-               argv_array_pushl(&av, "--shallow-file", alt_shallow_file, NULL);
+               argv_array_push(&child.args, "--shallow-file");
+               argv_array_push(&child.args, alt_shallow_file);
        }
  
 -      memset(&child, 0, sizeof(child));
        if (ntohl(hdr.hdr_entries) < unpack_limit) {
-               argv_array_pushl(&av, "unpack-objects", hdr_arg, NULL);
+               argv_array_pushl(&child.args, "unpack-objects", hdr_arg, NULL);
                if (quiet)
-                       argv_array_push(&av, "-q");
+                       argv_array_push(&child.args, "-q");
                if (fsck_objects)
-                       argv_array_push(&av, "--strict");
-               child.argv = av.argv;
+                       argv_array_push(&child.args, "--strict");
                child.no_stdout = 1;
                child.err = err_fd;
                child.git_cmd = 1;