diff options
Diffstat (limited to 'src/gallium/auxiliary/pipe-loader')
-rw-r--r-- | src/gallium/auxiliary/pipe-loader/pipe_loader.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader.c b/src/gallium/auxiliary/pipe-loader/pipe_loader.c index 6fd15527e53..fc8ee8e8dcd 100644 --- a/src/gallium/auxiliary/pipe-loader/pipe_loader.c +++ b/src/gallium/auxiliary/pipe-loader/pipe_loader.c @@ -31,6 +31,7 @@ #include "util/u_memory.h" #include "util/u_string.h" #include "util/u_dl.h" +#include "util/u_file.h" #include "util/xmlconfig.h" #include "util/xmlpool.h" @@ -158,11 +159,13 @@ pipe_loader_find_module(const char *driver_name, ret = util_snprintf(path, sizeof(path), "%s%s%s", MODULE_PREFIX, driver_name, UTIL_DL_EXT); - if (ret > 0 && ret < sizeof(path)) { + if (ret > 0 && ret < sizeof(path) && u_file_access(path, 0) != -1) { lib = util_dl_open(path); if (lib) { return lib; } + fprintf(stderr, "ERROR: Failed to load pipe driver at `%s': %s\n", + path, util_dl_error()); } } |