* fhandler_windows.cc (fhandler_windows::read): Use

pthread::get_cancel_event to fetch thread's cancel event.
	* flock.cc (lf_setlock): Ditto.
	* posix_ipc.cc (ipc_cond_timedwait): Ditto.
	* thread.cc (pthread::get_cancel_event): New static method.
	* thread.h (pthread::get_cancel_event): Declare.
This commit is contained in:
Corinna Vinschen
2011-05-01 17:42:41 +00:00
parent 1112b2c38f
commit a91ac4dca9
6 changed files with 28 additions and 13 deletions

View File

@@ -885,6 +885,19 @@ pthread::testcancel ()
}
}
/* Return cancel event handle if it exists *and* cancel is not disabled.
This function is supposed to be used from other functions which are
cancelable and need the cancel event in a WFMO call. */
HANDLE
pthread::get_cancel_event ()
{
pthread_t thread = pthread::self ();
return (thread && thread->cancel_event
&& thread->cancelstate != PTHREAD_CANCEL_DISABLE)
? thread->cancel_event : NULL;
}
void
pthread::static_cancel_self ()
{