[runtime] Set pending, don't raise, in object.c icalls
[mono.git] / mono / metadata / sgen-os-win32.c
index 8a2ae113da920483d3624c5995234a5fcfe8acca..3e78396ccd10f536f2bd73be7b41f01c69b76435 100644 (file)
@@ -1,6 +1,6 @@
 #include "config.h"
 
-#if defined(HAVE_SGEN_GC) && defined(HOST_WIN32)
+#if defined(HAVE_SGEN_GC) && !defined(USE_COOP_GC) && defined(HOST_WIN32)
 
 #include "io-layer/io-layer.h"
 
@@ -123,12 +123,11 @@ sgen_wait_for_suspend_ack (int count)
 int
 sgen_thread_handshake (BOOL suspend)
 {
-       SgenThreadInfo *info;
        SgenThreadInfo *current = mono_thread_info_current ();
        int count = 0;
 
        current->client_info.suspend_done = TRUE;
-       FOREACH_THREAD_SAFE (info) {
+       FOREACH_THREAD (info) {
                if (info == current)
                        continue;
                info->client_info.suspend_done = FALSE;
@@ -142,7 +141,7 @@ sgen_thread_handshake (BOOL suspend)
                                continue;
                }
                ++count;
-       } END_FOREACH_THREAD_SAFE
+       } FOREACH_THREAD_END
        return count;
 }