From fcb48e068028da7b8cb60ac3954f3e9f5fc38390 Mon Sep 17 00:00:00 2001 From: Sven Strickroth Date: Sat, 24 Nov 2012 15:48:17 +0100 Subject: [PATCH] Set p->mwf.fd to -1 on error If p->mwf.fd is e.g. -2 then it is closed in packfile_free and an exception might be thrown. Signed-off-by: Sven Strickroth --- src/pack.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/pack.c b/src/pack.c index f08f3d8c4..a2a2fbcd1 100644 --- a/src/pack.c +++ b/src/pack.c @@ -564,8 +564,10 @@ static int packfile_open(struct git_pack_file *p) /* TODO: open with noatime */ p->mwf.fd = git_futils_open_ro(p->pack_name); - if (p->mwf.fd < 0) - return p->mwf.fd; + if (p->mwf.fd < 0) { + p->mwf.fd = -1; + return -1; + } if (p_fstat(p->mwf.fd, &st) < 0 || git_mwindow_file_register(&p->mwf) < 0)