X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fsgen-os-mach.c;h=403d04c3d9a56f95560c27f08f8b55e2d0a0bdd9;hb=e097a98f3bd9082c7d03fa580b604c0228b4ad67;hp=fdbdb4b6f05d6ed52c8e0f132df538991fc6badb;hpb=524f732a6d8c29f0bfe64a47b89eab8a97aaac0d;p=mono.git diff --git a/mono/metadata/sgen-os-mach.c b/mono/metadata/sgen-os-mach.c index fdbdb4b6f05..403d04c3d9a 100644 --- a/mono/metadata/sgen-os-mach.c +++ b/mono/metadata/sgen-os-mach.c @@ -31,6 +31,7 @@ #include "metadata/sgen-gc.h" #include "metadata/sgen-archdep.h" #include "metadata/sgen-protocol.h" +#include "metadata/sgen-thread-pool.h" #include "metadata/object-internals.h" #include "metadata/gc-internal.h" @@ -114,9 +115,12 @@ sgen_thread_handshake (BOOL suspend) int count = 0; + cur_thread->suspend_done = TRUE; FOREACH_THREAD_SAFE (info) { - if (info == cur_thread || sgen_is_worker_thread (mono_thread_info_get_tid (info))) + if (info == cur_thread || sgen_thread_pool_is_thread_pool_thread (mono_thread_info_get_tid (info))) continue; + + info->suspend_done = FALSE; if (info->gc_disabled) continue;