unpack-objects -r: call it "recover".
[gitweb.git] / fetch.c
diff --git a/fetch.c b/fetch.c
index aeb6bf2639cc75b6f738348bcc267179a8a0da65..34df8d37d7dc92f8b652c160c49f4ace6e44e19c 100644 (file)
--- a/fetch.c
+++ b/fetch.c
@@ -84,7 +84,7 @@ static int process_commit(struct commit *commit)
        if (commit->object.flags & COMPLETE)
                return 0;
 
-       memcpy(current_commit_sha1, commit->object.sha1, 20);
+       hashcpy(current_commit_sha1, commit->object.sha1);
 
        pull_say("walk %s\n", sha1_to_hex(commit->object.sha1));
 
@@ -234,8 +234,8 @@ int pull_targets_stdin(char ***target, const char ***write_ref)
                        *target = xrealloc(*target, targets_alloc * sizeof(**target));
                        *write_ref = xrealloc(*write_ref, targets_alloc * sizeof(**write_ref));
                }
-               (*target)[targets] = strdup(tg_one);
-               (*write_ref)[targets] = rf_one ? strdup(rf_one) : NULL;
+               (*target)[targets] = xstrdup(tg_one);
+               (*write_ref)[targets] = rf_one ? xstrdup(rf_one) : NULL;
                targets++;
        }
        return targets;
@@ -302,8 +302,7 @@ int pull(int targets, char **target, const char **write_ref,
                if (ret)
                        goto unlock_and_fail;
        }
-       if (msg)
-               free(msg);
+       free(msg);
 
        return 0;