[remoting] Pass correct object to invoke of IRemotingTypeInfo.CanCastTo
[mono.git] / mono / utils / mono-publib.c
index 70271a57f8f7d48bb7f1ee69c1fc5c73f094a405..9dec4e76083ef1cc6f4a602619e3d4d7f1ebe708 100644 (file)
@@ -1,3 +1,7 @@
+/**
+ * \file
+ */
+
 #include "config.h"
 #include <mono/utils/mono-publib.h>
 #include <glib.h>
@@ -8,3 +12,19 @@ mono_free (void *ptr)
        g_free (ptr);
 }
 
+
+/**
+ * mono_set_allocator_vtable
+ * Make the runtime use the functions in \p vtable for allocating memory.
+ * The provided functions must have the same semantics of their libc's equivalents.
+ * \returns TRUE if the vtable was installed. FALSE if the version is incompatible.
+ */
+mono_bool
+mono_set_allocator_vtable (MonoAllocatorVTable* vtable)
+{
+       if (vtable->version != MONO_ALLOCATOR_VTABLE_VERSION)
+               return FALSE;
+       GMemVTable g_mem_vtable = { vtable->malloc, vtable->realloc, vtable->free, vtable->calloc};
+       g_mem_set_vtable (&g_mem_vtable);
+       return TRUE;
+}