mirror of
https://github.com/git/git.git
synced 2024-11-20 04:24:01 +01:00
http.c: Tiny refactoring of finish_http_pack_request
Always remove the struct packed_git from the active list, even if the rename of the temporary file fails. While we are here, simplify the code a bit by using a common local variable name ("p") to hold the relevant packed_git. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
d761b2ac0e
commit
021ab6f00b
16
http.c
16
http.c
@ -1002,8 +1002,9 @@ int finish_http_pack_request(struct http_pack_request *preq)
|
||||
{
|
||||
int ret;
|
||||
struct packed_git **lst;
|
||||
struct packed_git *p = preq->target;
|
||||
|
||||
preq->target->pack_size = ftell(preq->packfile);
|
||||
p->pack_size = ftell(preq->packfile);
|
||||
|
||||
if (preq->packfile != NULL) {
|
||||
fclose(preq->packfile);
|
||||
@ -1011,18 +1012,17 @@ int finish_http_pack_request(struct http_pack_request *preq)
|
||||
preq->slot->local = NULL;
|
||||
}
|
||||
|
||||
ret = move_temp_to_file(preq->tmpfile, preq->filename);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
lst = preq->lst;
|
||||
while (*lst != preq->target)
|
||||
while (*lst != p)
|
||||
lst = &((*lst)->next);
|
||||
*lst = (*lst)->next;
|
||||
|
||||
if (verify_pack(preq->target))
|
||||
ret = move_temp_to_file(preq->tmpfile, preq->filename);
|
||||
if (ret)
|
||||
return ret;
|
||||
if (verify_pack(p))
|
||||
return -1;
|
||||
install_packed_git(preq->target);
|
||||
install_packed_git(p);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user