On Tue, May 30, 2006 at 02:12:22PM -0700, Max Kaehn wrote: >The recent change (on 2006-05-24) to _dll_crt0() calls dll_crt0_1() >via _cygtls::call() instead of calling it directly. The call in >_cygtls::call2() to ExitThread() means that anyone using >cygwin_dll_init() will find that their main thread suddenly exits >instead of returning control to the caller of cygwin_dll_init(). > >This fix unrolls _dll_crt0 into cygwin_dll_init() and leaves it up >to the caller of cygwin_dll_init() to provide a pointer to the >padding.
Thanks for the patch but I just checked in a fix to cygtls::call2 which seems to be much less intrusive. I had also bumped the padding size in cygload.h in my sandbox but had forgotten to check it in. It's checked in now. cgf