Distinguishs between dynamic library not found and can't be opened.

This commit is contained in:
Daylily-Zeleen 2024-01-01 19:48:28 +08:00
parent 13a0d6e9b2
commit fe6b073811
6 changed files with 12 additions and 4 deletions

View file

@ -656,6 +656,8 @@ Error OS_Unix::open_dynamic_library(const String p_path, void *&p_library_handle
path = get_executable_path().get_base_dir().path_join("../lib").path_join(p_path.get_file());
}
ERR_FAIL_COND_V(!FileAccess::exists(path), ERR_FILE_NOT_FOUND);
p_library_handle = dlopen(path.utf8().get_data(), GODOT_DLOPEN_MODE);
ERR_FAIL_NULL_V_MSG(p_library_handle, ERR_CANT_OPEN, vformat("Can't open dynamic library: %s. Error: %s.", p_path, dlerror()));