mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 11:22:23 +00:00
storage: report VIR_ERR_NO_STORAGE_VOL when the file doesn't exist
Report VIR_ERR_NO_STORAGE_VOL instead of a system error when lstat fails because the file doesn't exist. Fixes this problem in virt-install: https://bugzilla.redhat.com/show_bug.cgi?id=1108922 Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
This commit is contained in:
parent
aad479dc4e
commit
d6e92bfa38
@ -1305,9 +1305,15 @@ virStorageBackendVolOpen(const char *path, struct stat *sb,
|
||||
bool noerror = (flags & VIR_STORAGE_VOL_OPEN_NOERROR);
|
||||
|
||||
if (lstat(path, sb) < 0) {
|
||||
if (errno == ENOENT && noerror) {
|
||||
VIR_WARN("ignoring missing file '%s'", path);
|
||||
return -2;
|
||||
if (errno == ENOENT) {
|
||||
if (noerror) {
|
||||
VIR_WARN("ignoring missing file '%s'", path);
|
||||
return -2;
|
||||
}
|
||||
virReportError(VIR_ERR_NO_STORAGE_VOL,
|
||||
_("no storage vol with matching path '%s'"),
|
||||
path);
|
||||
return -1;
|
||||
}
|
||||
virReportSystemError(errno,
|
||||
_("cannot stat file '%s'"),
|
||||
|
Loading…
x
Reference in New Issue
Block a user