mirror of
https://github.com/git/git
synced 2024-08-28 12:09:19 +00:00
Merge branch 'jn/unpack-lstat-failure-report'
* jn/unpack-lstat-failure-report: unpack-trees: handle lstat failure for existing file unpack-trees: handle lstat failure for existing directory
This commit is contained in:
commit
5bb20ece6b
|
@ -1374,16 +1374,22 @@ static int verify_absent_1(struct cache_entry *ce,
|
|||
char path[PATH_MAX + 1];
|
||||
memcpy(path, ce->name, len);
|
||||
path[len] = 0;
|
||||
lstat(path, &st);
|
||||
if (lstat(path, &st))
|
||||
return error("cannot stat '%s': %s", path,
|
||||
strerror(errno));
|
||||
|
||||
return check_ok_to_remove(path, len, DT_UNKNOWN, NULL, &st,
|
||||
error_type, o);
|
||||
} else if (!lstat(ce->name, &st))
|
||||
} else if (lstat(ce->name, &st)) {
|
||||
if (errno != ENOENT)
|
||||
return error("cannot stat '%s': %s", ce->name,
|
||||
strerror(errno));
|
||||
return 0;
|
||||
} else {
|
||||
return check_ok_to_remove(ce->name, ce_namelen(ce),
|
||||
ce_to_dtype(ce), ce, &st,
|
||||
error_type, o);
|
||||
|
||||
return 0;
|
||||
ce_to_dtype(ce), ce, &st,
|
||||
error_type, o);
|
||||
}
|
||||
}
|
||||
|
||||
static int verify_absent(struct cache_entry *ce,
|
||||
|
|
Loading…
Reference in a new issue