summaryrefslogtreecommitdiff
path: root/builtin/receive-pack.c
diff options
context:
space:
mode:
authorStefan Beller <sbeller@google.com>2015-01-07 19:23:17 -0800
committerJunio C Hamano <gitster@pobox.com>2015-01-07 19:56:43 -0800
commita1a261457c0577f5e0620fcc2b803999a6d5b8cf (patch)
tree4f25948a2a7a46974cf16e440c85a3463d866ee3 /builtin/receive-pack.c
parentb6a4788586d8d1e88eee298c4a9a571416e50e3a (diff)
downloadgit-a1a261457c0577f5e0620fcc2b803999a6d5b8cf.tar.gz
receive-pack.c: move iterating over all commands outside execute_commands
This commit allows us in a later patch to easily distinguish between the non atomic way to update the received refs and the atomic way which is introduced in a later patch. Signed-off-by: Stefan Beller <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin/receive-pack.c')
-rw-r--r--builtin/receive-pack.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/builtin/receive-pack.c b/builtin/receive-pack.c
index 3bdb1586d6..0ccfb3d689 100644
--- a/builtin/receive-pack.c
+++ b/builtin/receive-pack.c
@@ -1064,6 +1064,18 @@ static void warn_if_skipped_connectivity_check(struct command *commands,
die("BUG: connectivity check skipped???");
}
+static void execute_commands_non_atomic(struct command *commands,
+ struct shallow_info *si)
+{
+ struct command *cmd;
+ for (cmd = commands; cmd; cmd = cmd->next) {
+ if (!should_process_cmd(cmd))
+ continue;
+
+ cmd->error_string = update(cmd, si);
+ }
+}
+
static void execute_commands(struct command *commands,
const char *unpacker_error,
struct shallow_info *si)
@@ -1098,12 +1110,7 @@ static void execute_commands(struct command *commands,
free(head_name_to_free);
head_name = head_name_to_free = resolve_refdup("HEAD", 0, sha1, NULL);
- for (cmd = commands; cmd; cmd = cmd->next) {
- if (!should_process_cmd(cmd))
- continue;
-
- cmd->error_string = update(cmd, si);
- }
+ execute_commands_non_atomic(commands, si);
if (shallow_update)
warn_if_skipped_connectivity_check(commands, si);