Re: [PATCH v6 18/19] push: refactor refspec_append_mapped() for subsequent leak-fix
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Feb 6, 2023, 23:42 UTC
- Message-ID
- <xmqq357i2wex.fsf@gitster.g>
- In-Reply-To
- <230206.86sffi67ce.gmgdl@evledraar.gmail.com>
Ævar Arnfjörð Bjarmason <avarab@gmail.com> writes:
Show 7 quoted lines
> I think you're mistaken, or I'm misunderstanding you. For e.g. the 29th > test in t4301-merge-tree-write-tree.sh where we do: > > git push read-only side1 side2 side3 > > We'll only invoke "get_local_heads()" once, not once for each of the > refs.
Ahh. get_local_heads() appears inside this conditional in the original.
} else if (!strchr(ref, ':')) {
if (!remote) {
remote = remote_get(repo);
local_refs = get_local_heads();
}
refspec_append_mapped(...);
} else
...So the original was using !remote as the switch to make both remote and local_refs assigned onnly once. The rewritten code makes them separately "find first non-null".
OK.