mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-08-28 19:41:16 +00:00
driver: fix handling of error return from finding resource
The virFileFindResource method merely builds up the expected fully qualified path to the resource. It does not actually check if it exists on disk. The loadable module callers were mistakenly thinking a NULL indicates the file doesn't exist on disk, whereas it in fact indicates an out of memory error. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
parent
96a72f3444
commit
2902b76472
@ -153,7 +153,7 @@ virDriverLoadModule(const char *name,
|
|||||||
abs_topbuilddir "/src/.libs",
|
abs_topbuilddir "/src/.libs",
|
||||||
DEFAULT_DRIVER_DIR,
|
DEFAULT_DRIVER_DIR,
|
||||||
"LIBVIRT_DRIVER_DIR")))
|
"LIBVIRT_DRIVER_DIR")))
|
||||||
return 1;
|
return -1;
|
||||||
|
|
||||||
ret = virDriverLoadModuleFull(modfile, regfunc);
|
ret = virDriverLoadModuleFull(modfile, regfunc);
|
||||||
|
|
||||||
|
@ -95,7 +95,7 @@ virStorageDriverLoadBackendModule(const char *name,
|
|||||||
abs_topbuilddir "/src/.libs",
|
abs_topbuilddir "/src/.libs",
|
||||||
STORAGE_BACKEND_MODULE_DIR,
|
STORAGE_BACKEND_MODULE_DIR,
|
||||||
"LIBVIRT_STORAGE_BACKEND_DIR")))
|
"LIBVIRT_STORAGE_BACKEND_DIR")))
|
||||||
return 1;
|
return -1;
|
||||||
|
|
||||||
if ((ret = virDriverLoadModuleFull(modfile, regfunc)) != 0) {
|
if ((ret = virDriverLoadModuleFull(modfile, regfunc)) != 0) {
|
||||||
if (forceload) {
|
if (forceload) {
|
||||||
|
@ -1736,6 +1736,10 @@ static bool useDirOverride;
|
|||||||
* run from the source tree. Otherwise it will return the
|
* run from the source tree. Otherwise it will return the
|
||||||
* path in the installed location.
|
* path in the installed location.
|
||||||
*
|
*
|
||||||
|
* Note that this function does not actually check whether
|
||||||
|
* the file exists on disk, it merely builds the fully
|
||||||
|
* qualified path where it is supposed to exist.
|
||||||
|
*
|
||||||
* If @envname is non-NULL it will override all other
|
* If @envname is non-NULL it will override all other
|
||||||
* directory lookup.
|
* directory lookup.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user