I've been looking into the memory leaks reported in the ISAPI in bug report #23331 and believe that I've found something quite odd. It looks like the module destructors (such as basic_globals_dtor()) are not getting called in either the ISAPI or the CLI. ts_allocate_id() correctly adds the dtors to the resource_types_table, but the only place I can find that those dtors would be called from is the ts_free_thread() function. The CLI never calls ts_free_thread(), and the ISAPI doesn't call is for the final DLL_PROCESS_DETATCH thread. Is there a place that I'm missing where these dtors should be getting called? If I add a ts_free_thread() before the final tsrm_shutdown() in php_cli.c then in my testing (all Win32) the dtors do then get called correctly.
Michael Sisolak [EMAIL PROTECTED] __________________________________ Do you Yahoo!? Free Pop-Up Blocker - Get it now http://companion.yahoo.com/ -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php
