2003-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
authorGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Mon, 2 Jun 2003 19:07:09 +0000 (19:07 -0000)
committerGonzalo Paniagua Javier <gonzalo.mono@gmail.com>
Mon, 2 Jun 2003 19:07:09 +0000 (19:07 -0000)
* icall.c: added CloseEvent_internal.
* object.c: free the GError.
* threads.[ch]:
(ves_icall_System_Threading_Events_CloseEvent_internal): new internal
call.

svn path=/trunk/mono/; revision=15071

mono/metadata/ChangeLog
mono/metadata/icall.c
mono/metadata/object.c
mono/metadata/threads.c
mono/metadata/threads.h

index c485f1ff204dd5c305797580471956b5db6398b8..c0d3111061134cade47c589ffe96d36b4c52e712 100644 (file)
@@ -1,3 +1,11 @@
+2003-06-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * object.c: free the GError.
+       * icall.c: added CloseEvent_internal.
+       * threads.[ch]:
+       (ves_icall_System_Threading_Events_CloseEvent_internal): new internal
+       call.
+
 2003-06-01  Zoltan Varga  <vargaz@freemail.hu>
 
        * loader.c (mono_method_get_signature): Add support for dynamic
index 5a02e0dd3f4af3c051b82822ec909e39b37c0b26..b6aafc0c33b46bffcba9673e89f6db4c2e08a9ca 100644 (file)
@@ -3771,6 +3771,7 @@ static gconstpointer icall_map [] = {
        "System.Threading.NativeEventCalls::CreateEvent_internal", ves_icall_System_Threading_Events_CreateEvent_internal,
        "System.Threading.NativeEventCalls::SetEvent_internal",    ves_icall_System_Threading_Events_SetEvent_internal,
        "System.Threading.NativeEventCalls::ResetEvent_internal",  ves_icall_System_Threading_Events_ResetEvent_internal,
+       "System.Threading.NativeEventCalls::CloseEvent_internal", ves_icall_System_Threading_Events_CloseEvent_internal,
 
        /*
         * System.Threading.WaitHandle
index 1184067120df8b2c0c249ab63c600b3dc60c6f45..7bf979040d20e7ed0aa3ed1fc99d4156dfcb3367 100644 (file)
@@ -1853,8 +1853,10 @@ mono_string_to_utf8 (MonoString *s)
                return g_strdup ("");
 
        as = g_utf16_to_utf8 (mono_string_chars (s), s->length, NULL, NULL, &error);
-       if (error)
+       if (error) {
                g_warning (error->message);
+               g_error_free (error);
+       }
 
        return as;
 }
index 2eb23883ca459fff89eaea0bb822947bb73e9729..e3eeda52751d20ee5ff64b725ec6476bea8825a7 100644 (file)
@@ -681,9 +681,7 @@ void ves_icall_System_Threading_Mutex_ReleaseMutex_internal (HANDLE handle ) {
        ReleaseMutex(handle);
 }
 
-HANDLE ves_icall_System_Threading_Events_CreateEvent_internal (MonoBoolean manual,
-                                                                                                                         MonoBoolean initial,
-                                                                                                                         char *name) {
+HANDLE ves_icall_System_Threading_Events_CreateEvent_internal (MonoBoolean manual, MonoBoolean initial, char *name) {
        MONO_ARCH_SAVE_REGS;
 
        return (CreateEvent(NULL,manual,initial,name));
@@ -701,6 +699,13 @@ gboolean ves_icall_System_Threading_Events_ResetEvent_internal (HANDLE handle) {
        return (ResetEvent(handle));
 }
 
+void
+ves_icall_System_Threading_Events_CloseEvent_internal (HANDLE handle) {
+       MONO_ARCH_SAVE_REGS;
+
+       CloseHandle (handle);
+}
+
 gint32 ves_icall_System_Threading_Interlocked_Increment_Int (gint32 *location)
 {
        MONO_ARCH_SAVE_REGS;
index 43dfa2581fb0c884faec3b8c46608db21baa2b09..48088c08ad4f168985d1fa7055cfd3a8cb6c9545 100644 (file)
@@ -70,6 +70,7 @@ extern void ves_icall_System_Threading_Mutex_ReleaseMutex_internal (HANDLE handl
 extern HANDLE ves_icall_System_Threading_Events_CreateEvent_internal (MonoBoolean manual,MonoBoolean initial,char *name);
 extern gboolean ves_icall_System_Threading_Events_SetEvent_internal (HANDLE handle);
 extern gboolean ves_icall_System_Threading_Events_ResetEvent_internal (HANDLE handle);
+extern void ves_icall_System_Threading_Events_CloseEvent_internal (HANDLE handle);
 
 extern gboolean ves_icall_System_Threading_WaitHandle_WaitAll_internal(MonoArray *mono_handles, gint32 ms, gboolean exitContext);
 extern gint32 ves_icall_System_Threading_WaitHandle_WaitAny_internal(MonoArray *mono_handles, gint32 ms, gboolean exitContext);