Catch write_ref_sha1 failure in receive-pack
This failure to catch the failure of write_ref_sha1 was noticed by Bill Lear. The ref will not update if the log file could not be appended to (due to file permissions problems). Such a failure should be flagged as a failure to update the ref, so that the client knows the push did not succeed. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
58db64f73c
commit
ef203f0856
@ -158,7 +158,10 @@ static int update(struct command *cmd)
|
|||||||
cmd->error_string = "failed to lock";
|
cmd->error_string = "failed to lock";
|
||||||
return error("failed to lock %s", name);
|
return error("failed to lock %s", name);
|
||||||
}
|
}
|
||||||
write_ref_sha1(lock, new_sha1, "push");
|
if (write_ref_sha1(lock, new_sha1, "push")) {
|
||||||
|
cmd->error_string = "failed to write";
|
||||||
|
return -1; /* error() already called */
|
||||||
|
}
|
||||||
fprintf(stderr, "%s: %s -> %s\n", name, old_hex, new_hex);
|
fprintf(stderr, "%s: %s -> %s\n", name, old_hex, new_hex);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user