On Mon, Nov 07, 2022 at 06:07:01PM +0100, Ævar Arnfjörð Bjarmason wrote: > > On Mon, Nov 07 2022, Ævar Arnfjörð Bjarmason wrote: > > > On Mon, Nov 07 2022, Patrick Steinhardt wrote: > > >> +TEST_PASSES_SANITIZE_LEAK=true > > > > Thanks for adding this! :) > > Hrm, I spoke too soon :) This series adds new leaks, so it'll fail with > the linux-leaks job. I have the following local monkeypatch on top, > which obviously doesn't address the root cause. The t6018 leak is new > due to the new tests you added. Right, I didn't know it was as easy to run tests with leak checking as just executing `make test SANITIZE=leak`. Anyway, I did that now and the issue is in fact in how the hidden refs are parsed because we already `xstrdup()` the config value as we need to modify it anyway. The following patch fixes the issue: diff --git a/refs.c b/refs.c index f1711e2e9f..2c7e88b190 100644 --- a/refs.c +++ b/refs.c @@ -1430,7 +1430,7 @@ int parse_hide_refs_config(const char *var, const char *value, const char *secti len = strlen(ref); while (len && ref[len - 1] == '/') ref[--len] = '\0'; - string_list_append(hide_refs, ref); + string_list_append_nodup(hide_refs, ref); } return 0; } Patrick