diff options
| author | Jamie Madill <jmadill@chromium.org> | 2016-04-27 16:33:23 -0400 |
|---|---|---|
| committer | Jon Ashburn <jon@lunarg.com> | 2016-04-28 16:19:38 -0600 |
| commit | f670934e0a197d49bcd0b0ea525e7d04c362aabd (patch) | |
| tree | 2f8a16b96e9b26d2cd776b3f273c5fd8ae0cfec6 /loader/loader.c | |
| parent | 5342ef5e9026fc97e3dc1b6ceaeed0eb7f2e1d85 (diff) | |
| download | usermoji-f670934e0a197d49bcd0b0ea525e7d04c362aabd.tar.xz | |
Revert "loader: Remove the default directory paths for ICDs and layers"
This reverts commit b1e6b564616c40062b81d0b8b90e8689dd9aea11.
Change-Id: I9e6bfad81369912c85c3122d6d36093c3c148454
Diffstat (limited to 'loader/loader.c')
| -rw-r--r-- | loader/loader.c | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/loader/loader.c b/loader/loader.c index 18ffec82..17c2f557 100644 --- a/loader/loader.c +++ b/loader/loader.c @@ -1954,6 +1954,7 @@ loader_add_layer_properties(const struct loader_instance *inst, strncpy(props->info.layerName, name, sizeof(props->info.layerName)); props->info.layerName[sizeof(props->info.layerName) - 1] = '\0'; + char *fullpath = props->lib_name; char *rel_base; if (loader_platform_is_path(library_path)) { // a relative or absolute path @@ -1961,11 +1962,11 @@ loader_add_layer_properties(const struct loader_instance *inst, strcpy(name_copy, filename); rel_base = loader_platform_dirname(name_copy); loader_expand_path(library_path, rel_base, MAX_STRING_SIZE, - props->lib_name); + fullpath); } else { - // a filename which will be passed to the OSes library loader - strncpy(props->lib_name, library_path, sizeof(props->lib_name)); - props->lib_name[sizeof(props->lib_name) - 1] = '\0'; + // a filename which is assumed in a system directory + loader_get_fullpath(library_path, DEFAULT_VK_LAYERS_PATH, + MAX_STRING_SIZE, fullpath); } props->info.specVersion = loader_make_version(api_version); props->info.implementationVersion = atoi(implementation_version); @@ -2467,12 +2468,12 @@ void loader_icd_scan(const struct loader_instance *inst, cJSON_Delete(json); continue; } - char fullpath[MAX_STRING_SIZE], *fpath; + char fullpath[MAX_STRING_SIZE]; // Print out the paths being searched if debugging is enabled loader_log( inst, VK_DEBUG_REPORT_DEBUG_BIT_EXT, 0, - "Searching for ICD drivers named %s\n", - library_path); + "Searching for ICD drivers named %s default dir %s\n", + library_path, DEFAULT_VK_DRIVERS_PATH); if (loader_platform_is_path(library_path)) { // a relative or absolute path char *name_copy = loader_stack_alloc(strlen(file_str) + 1); @@ -2481,10 +2482,10 @@ void loader_icd_scan(const struct loader_instance *inst, rel_base = loader_platform_dirname(name_copy); loader_expand_path(library_path, rel_base, sizeof(fullpath), fullpath); - fpath = fullpath; } else { - // a filename which will be passed to the OSes library loader - fpath = library_path; + // a filename which is assumed in a system directory + loader_get_fullpath(library_path, DEFAULT_VK_DRIVERS_PATH, + sizeof(fullpath), fullpath); } uint32_t vers = 0; @@ -2494,7 +2495,7 @@ void loader_icd_scan(const struct loader_instance *inst, vers = loader_make_version(temp); loader_tls_heap_free(temp); } - loader_scanned_icd_add(inst, icds, fpath, vers); + loader_scanned_icd_add(inst, icds, fullpath, vers); } else loader_log(inst, VK_DEBUG_REPORT_WARNING_BIT_EXT, 0, "Can't find \"library_path\" object in ICD JSON " |
