aboutsummaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
authorHein-Pieter van Braam2018-06-13 12:21:29 +0000
committerHein-Pieter van Braam2018-06-13 12:21:29 +0000
commite649ec71df1cdd06ea94151009447c894bc5af38 (patch)
tree0aac6b75b34f8361bf1e424896afd902b9ef8b8a /modules
parent711aa196afbba0716ed13ef7f3407e7a666d554a (diff)
downloadgodot-e649ec71df1cdd06ea94151009447c894bc5af38.tar.gz
godot-e649ec71df1cdd06ea94151009447c894bc5af38.tar.zst
godot-e649ec71df1cdd06ea94151009447c894bc5af38.zip
Diffstat (limited to 'modules')
-rw-r--r--modules/mono/mono_gd/gd_mono_assembly.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/modules/mono/mono_gd/gd_mono_assembly.cpp b/modules/mono/mono_gd/gd_mono_assembly.cpp
index 2827f4ea5..9d3bee217 100644
--- a/modules/mono/mono_gd/gd_mono_assembly.cpp
+++ b/modules/mono/mono_gd/gd_mono_assembly.cpp
@@ -143,10 +143,11 @@ MonoAssembly *GDMonoAssembly::_preload_hook(MonoAssemblyName *aname, char **asse
if (has_extension ? name == "mscorlib.dll" : name == "mscorlib") {
GDMonoAssembly **stored_assembly = GDMono::get_singleton()->get_loaded_assembly(has_extension ? name.get_basename() : name);
- if (stored_assembly) return (*stored_assembly)->get_assembly();
+ if (stored_assembly)
+ return (*stored_assembly)->get_assembly();
String path;
- MonoAssembly *res = NULL;
+ GDMonoAssembly *res = NULL;
for (int i = 0; i < search_dirs.size(); i++) {
const String &search_dir = search_dirs[i];
@@ -154,19 +155,21 @@ MonoAssembly *GDMonoAssembly::_preload_hook(MonoAssemblyName *aname, char **asse
if (has_extension) {
path = search_dir.plus_file(name);
if (FileAccess::exists(path)) {
- res = _load_assembly_from(name.get_basename(), path);
- break;
+ res = _load_assembly_from(name.get_basename(), path, refonly);
+ if (res != NULL)
+ break;
}
} else {
path = search_dir.plus_file(name + ".dll");
if (FileAccess::exists(path)) {
- res = _load_assembly_from(name, path);
- break;
+ res = _load_assembly_from(name, path, refonly);
+ if (res != NULL)
+ break;
}
}
}
- if (res) return res;
+ return res ? res->get_assembly() : NULL;
}
return NULL;