OSDN Git Service

* dcrt0.cc (atexit_lock): Delete.
authorcgf <cgf>
Tue, 2 Feb 2010 02:00:01 +0000 (02:00 +0000)
committercgf <cgf>
Tue, 2 Feb 2010 02:00:01 +0000 (02:00 +0000)
commite53097d5512d92acb0b336f7dd3adb420faa8c51
treedb87ef86772873e17c649b65aac886e60e1295f5
parent18236d5de13ecea279eef337cc00dba8fd8c5962
* dcrt0.cc (atexit_lock): Delete.
(cygwin_exit): Remove atexit lock.
(cygwin_atexit): Ditto.  Rename parameter to match newlib.  Call __cxa_atexit
when invoked by a registered DLL.
* dll_init.cc (remove_dll_atexit): Delete.
(dll_list::find): New function.
(dll_list::detach): Use dll_list::find to find dll associated with return
address.  Use __cxa_finalize to run atexit functions associated with the dll.
(cygwin_detach_dll): Don't assume that HANDLE == void *.
* dll_init.h (dll_list::find): Declare.
(__cxa_atexit): Ditto.
(__cxa_finalize): Ditto.
* init.cc (dll_entry): Clarify comment.
winsup/cygwin/ChangeLog
winsup/cygwin/dcrt0.cc
winsup/cygwin/dll_init.cc
winsup/cygwin/dll_init.h
winsup/cygwin/init.cc