]> git.ipfire.org Git - thirdparty/git.git/blobdiff - builtin/receive-pack.c
Convert resolve_ref+xstrdup to new resolve_refdup function
[thirdparty/git.git] / builtin / receive-pack.c
index b6d957cb0d2659f2207287598b3566ed37a35ae0..62afac3ec1ee4558b186e08e2f664216ac17bca5 100644 (file)
@@ -37,6 +37,7 @@ static int prefer_ofs_delta = 1;
 static int auto_update_server_info;
 static int auto_gc = 1;
 static const char *head_name;
+static void *head_name_to_free;
 static int sent_capabilities;
 
 static enum deny_action parse_deny_action(const char *var, const char *value)
@@ -695,10 +696,8 @@ static void execute_commands(struct command *commands, const char *unpacker_erro
 
        check_aliased_updates(commands);
 
-       free((char *)head_name);
-       head_name = resolve_ref("HEAD", sha1, 0, NULL);
-       if (head_name)
-               head_name = xstrdup(head_name);
+       free(head_name_to_free);
+       head_name = head_name_to_free = resolve_refdup("HEAD", sha1, 0, NULL);
 
        for (cmd = commands; cmd; cmd = cmd->next)
                if (!cmd->skip_update)