diff options
Diffstat (limited to 'src')
| -rwxr-xr-x | src/librarian/library.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/librarian/library.c b/src/librarian/library.c index 7ca96e0a..992f694e 100755 --- a/src/librarian/library.c +++ b/src/librarian/library.c @@ -219,18 +219,19 @@ static void initEmulatedLib(const char* path, library_t *lib, box64context_t* co { char libname[MAX_PATH]; strcpy(libname, path); - int found = FileExist(libname, IS_FILE); - if(!found && !strchr(path, '/')) + int found = FileIsX64ELF(libname); + if(found) + if(loadEmulatedLib(libname, lib, context)) + return; + if(!strchr(path, '/')) for(int i=0; i<context->box64_ld_lib.size; ++i) { strcpy(libname, context->box64_ld_lib.paths[i]); strcat(libname, path); - if(FileExist(libname, IS_FILE)) + if(FileIsX64ELF(libname)) if(loadEmulatedLib(libname, lib, context)) return; } - else - loadEmulatedLib(libname, lib, context); } extern char* libGL; |