Skip to content

Commit 7b46391

Browse files
committed
Take 2 to fix assembly load for typemap lookup
Context: 9a7aee7
1 parent 9a7aee7 commit 7b46391

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

Diff for: src/monodroid/jni/embedded-assemblies.cc

+8-2
Original file line numberDiff line numberDiff line change
@@ -701,11 +701,17 @@ EmbeddedAssemblies::typemap_java_to_managed (hash_t hash, const MonoString *java
701701

702702
// Trigger MonoVM's machinery to load an image. This will involve calling us back to find, uncompress (if
703703
// necessary) and load the assembly from whatever storage the app uses.
704+
dynamic_local_string<SENSIBLE_PATH_MAX> assembly_name;
705+
assembly_name.assign_c (module->assembly_name);
706+
assembly_name.append (SharedConstants::DLL_EXTENSION);
707+
704708
MonoImageOpenStatus status{};
705-
module->image = mono_image_open (module->assembly_name, &status);
709+
MonoAssembly *assm = mono_assembly_open (assembly_name.get (), &status);
706710

707711
if (status != MonoImageOpenStatus::MONO_IMAGE_OK) {
708-
log_warn (LOG_ASSEMBLY, "typemap: failed to load managed assembly image '%s'. %s", module->assembly_name, mono_image_strerror (status));
712+
log_warn (LOG_ASSEMBLY, "typemap: failed to load managed assembly '%s'. %s", assembly_name.get (), mono_image_strerror (status));
713+
} else {
714+
module->image = mono_assembly_get_image (assm);
709715
}
710716
}
711717

0 commit comments

Comments
 (0)