mirror of
https://github.com/git/git
synced 2024-10-29 04:53:15 +00:00
read_packed_refs(): report unexpected fopen() failures
The old code ignored any errors encountered when trying to fopen the "packed-refs" file, treating all such failures as if the file didn't exist. But it could be that there is some other error opening the file (e.g., permissions problems), and we don't want to silently ignore such problems. So report any failures that are not due to ENOENT. Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
099a912a27
commit
89c571da56
1 changed files with 12 additions and 2 deletions
|
@ -251,8 +251,18 @@ static struct packed_ref_cache *read_packed_refs(const char *packed_refs_file)
|
|||
packed_refs->cache->root->flag &= ~REF_INCOMPLETE;
|
||||
|
||||
f = fopen(packed_refs_file, "r");
|
||||
if (!f)
|
||||
return packed_refs;
|
||||
if (!f) {
|
||||
if (errno == ENOENT) {
|
||||
/*
|
||||
* This is OK; it just means that no
|
||||
* "packed-refs" file has been written yet,
|
||||
* which is equivalent to it being empty.
|
||||
*/
|
||||
return packed_refs;
|
||||
} else {
|
||||
die_errno("couldn't read %s", packed_refs_file);
|
||||
}
|
||||
}
|
||||
|
||||
stat_validity_update(&packed_refs->validity, fileno(f));
|
||||
|
||||
|
|
Loading…
Reference in a new issue