This is the mail archive of the cygwin-patches@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] stdio initialization


Christopher Faylor wrote:

Actually, on poking around a little, I wonder if we should be calling _reclaim_reent to get back all of the stuff allocated in the REENT structure?


I think you are right. Here is my patch to thread.cc that i will apply if there are no objections.

diff -urp src.org/thread.cc src/thread.cc
--- src.org/thread.cc	2003-11-11 09:16:39.775574400 +0100
+++ src/thread.cc	2003-11-11 09:21:24.304707200 +0100
@@ -377,6 +377,8 @@ pthread::exit (void *value_ptr)
       mutex.unlock ();
     }

+  (_reclaim_reent) (_REENT);
+
   if (InterlockedDecrement (&MT_INTERFACE->threadcount) == 0)
     ::exit (0);
   else
@@ -1879,6 +1881,7 @@ __reent_t::init_clib (struct _reent& var
   var._stdout = _GLOBAL_REENT->_stdout;
   var._stderr = _GLOBAL_REENT->_stderr;
   var.__sdidinit = _GLOBAL_REENT->__sdidinit;
+  var.__cleanup = _GLOBAL_REENT->__cleanup;
   _clib = &var;
 };


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]