+2004-07-22 Dick Porter <dick@ximian.com>
+
+ * timed-thread.c:
+ * threads.c: Move the destruction of the internal thread data to
+ after the thread has been joined. Fixes bug 61418.
+
2004-07-14 Dick Porter <dick@ximian.com>
* wait.c (test_and_own): When not waiting for all handles to
thread_handle->thread->id);
#endif
- if(thread_handle->thread!=NULL) {
- _wapi_timed_thread_destroy (thread_handle->thread);
- }
+ thread_handle->thread=NULL;
}
static void thread_own (gpointer handle)
return(0xFFFFFFFF);
}
+ if (thread_private_handle->thread == NULL) {
+ return(0xFFFFFFFF);
+ }
+
#ifdef WITH_INCLUDED_LIBGC
if (thread_private_handle->thread->suspend_count <= 1)
_wapi_timed_thread_resume (thread_private_handle->thread);
return(0xFFFFFFFF);
}
+ if (thread_private_handle->thread == NULL) {
+ return(0xFFFFFFFF);
+ }
+
if (!thread_private_handle->thread->suspend_count) {
if (handle == current)
_wapi_timed_thread_suspend (thread_private_handle->thread);