* DevNotes: Add entry cgf-000018.
* init.cc (dll_entry): Grab process lock before exiting to ensure that thread doesn't exit before parent if parent is exiting. * _cygtls.cc (_cygtls::call2): Revert previous 2012-12-21 change. * miscfuncs.cc (thread_wrapper): Ditto. * thread.cc (pthread::exit): Ditto. * sigproc.cc (exit_thread): Ditto. (wait_sig): Ditto. * sync.cc (muto::release): Ditto. * sync.h (muto::release): Ditto. * sigproc.h (__SIGTHREADEXIT): Delete enum. (exit_thread): Delete declaration.
This commit is contained in:
@@ -4,8 +4,7 @@
|
||||
which is intended to operate similarly to a mutex but attempts to
|
||||
avoid making expensive calls to the kernel.
|
||||
|
||||
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009, 2010, 2011, 2012
|
||||
Red Hat, Inc.
|
||||
Copyright 2000, 2001, 2002, 2003, 2004, 2005, 2008, 2009, 2010 Red Hat, Inc.
|
||||
|
||||
This file is part of Cygwin.
|
||||
|
||||
@@ -110,8 +109,10 @@ muto::acquired ()
|
||||
|
||||
/* Return the muto lock. Needs to be called once per every acquire. */
|
||||
int
|
||||
muto::release (_cygtls *this_tls)
|
||||
muto::release ()
|
||||
{
|
||||
void *this_tls = &_my_tls;
|
||||
|
||||
if (tls != this_tls || !visits)
|
||||
{
|
||||
SetLastError (ERROR_NOT_OWNER); /* Didn't have the lock. */
|
||||
|
Reference in New Issue
Block a user