This helper function looks for config in two places: transfer.hiderefs,
or $section.hiderefs, where $section is passed in by the caller (and is
"uploadpack" or "receive", depending on the context).

In preparation for callers which do not even have that context (namely
the "git-serve" command), let's handle a NULL by looking only at
transfer.hiderefs (as opposed to segfaulting).

Signed-off-by: Jeff King <p...@peff.net>
---
 refs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/refs.c b/refs.c
index f9936355cd..099e91d9cc 100644
--- a/refs.c
+++ b/refs.c
@@ -1267,7 +1267,8 @@ int parse_hide_refs_config(const char *var, const char 
*value, const char *secti
 {
        const char *key;
        if (!strcmp("transfer.hiderefs", var) ||
-           (!parse_config_key(var, section, NULL, NULL, &key) &&
+           (section &&
+            !parse_config_key(var, section, NULL, NULL, &key) &&
             !strcmp(key, "hiderefs"))) {
                char *ref;
                int len;
-- 
2.20.0.734.gb4f2c0d2be

Reply via email to