return GUINT_TO_POINTER (alc->gchandle);
}
-gpointer
-ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadUnmanagedDllFromPath (MonoStringHandle fname, MonoError *error)
-{
- gpointer res = NULL;
- MonoDl *lib = NULL;
- char *filename = NULL;
- char *local_error = NULL;
-
- g_assert (!MONO_HANDLE_IS_NULL (fname)); // should have already been checked in managed, so we assert
-
- filename = mono_string_handle_to_utf8 (fname, error);
- goto_if_nok (error, exit);
-
- g_assert (g_path_is_absolute (filename)); // again, checked in managed
-
- lib = mono_dl_open (filename, MONO_DL_LAZY, &local_error);
-
- if (lib == NULL) {
- mono_error_set_file_not_found (error, filename, "%s", local_error);
- goto exit;
- }
-
- res = lib->handle;
-
-exit:
- g_free (lib);
- g_free (filename);
- g_free (local_error);
- return res;
-}
-
gboolean
mono_alc_is_default (MonoAssemblyLoadContext *alc)
{
HANDLES(ALC_2, "InternalInitializeNativeALC", ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalInitializeNativeALC, gpointer, 3, (gpointer, MonoBoolean, MonoBoolean))
HANDLES(ALC_1, "InternalLoadFile", ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFile, MonoReflectionAssembly, 3, (gpointer, MonoString, MonoStackCrawlMark_ptr))
HANDLES(ALC_3, "InternalLoadFromStream", ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFromStream, MonoReflectionAssembly, 5, (gpointer, gpointer, gint32, gpointer, gint32))
-HANDLES(ALC_6, "InternalLoadUnmanagedDllFromPath", ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadUnmanagedDllFromPath, gpointer, 1, (MonoString))
ICALL_TYPE(RUNIMPORT, "System.Runtime.RuntimeImports", RUNIMPORT_1)
NOHANDLES(ICALL(RUNIMPORT_1, "RhBulkMoveWithWriteBarrier", ves_icall_System_Runtime_RuntimeImports_RhBulkMoveWithWriteBarrier))
{
}
- [MethodImplAttribute (MethodImplOptions.InternalCall)]
- extern static IntPtr InternalLoadUnmanagedDllFromPath (string unmanagedDllPath);
-
[System.Security.DynamicSecurityMethod] // Methods containing StackCrawlMark local var has to be marked DynamicSecurityMethod
Assembly InternalLoadFromPath (string assemblyPath, string nativeImagePath)
{