Git fork

treewide: use setup_revisions_from_strvec() when we have a strvec

The previous commit introduced a wrapper to make using setup_revisions()
with a strvec easier and safer. It converted spots that were already
doing most of what the wrapper did.

Let's now convert spots where we were not setting up the
free_removed_argv_elements flag. As discussed in the previous commit,
this probably isn't fixing any bugs or leaks (since these sites wouldn't
trigger the re-shuffling of argv that causes them). This is mostly
future-proofing us against setup_revisions() becoming more aggressive
about its re-shuffling.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>

authored by

Jeff King and committed by
Junio C Hamano
b553332f f93c1d86

+4 -3
+2 -1
builtin/describe.c
··· 525 525 NULL); 526 526 527 527 repo_init_revisions(the_repository, &revs, NULL); 528 - if (setup_revisions(args.nr, args.v, &revs, NULL) > 1) 528 + setup_revisions_from_strvec(&args, &revs, NULL); 529 + if (args.nr > 1) 529 530 BUG("setup_revisions could not handle all args?"); 530 531 531 532 if (prepare_revision_walk(&revs))
+1 -1
http-push.c
··· 1941 1941 strvec_pushf(&commit_argv, "^%s", 1942 1942 oid_to_hex(&ref->old_oid)); 1943 1943 repo_init_revisions(the_repository, &revs, setup_git_directory()); 1944 - setup_revisions(commit_argv.nr, commit_argv.v, &revs, NULL); 1944 + setup_revisions_from_strvec(&commit_argv, &revs, NULL); 1945 1945 revs.edge_hint = 0; /* just in case */ 1946 1946 1947 1947 /* Generate a list of objects that need to be pushed */
+1 -1
submodule.c
··· 900 900 save_warning = warn_on_object_refname_ambiguity; 901 901 warn_on_object_refname_ambiguity = 0; 902 902 repo_init_revisions(r, &rev, NULL); 903 - setup_revisions(argv->nr, argv->v, &rev, &s_r_opt); 903 + setup_revisions_from_strvec(argv, &rev, &s_r_opt); 904 904 warn_on_object_refname_ambiguity = save_warning; 905 905 if (prepare_revision_walk(&rev)) 906 906 die(_("revision walk setup failed"));