
Thomas Witt <witt@acm.org> writes:
Any input on this one. Seems like too complicated a fix for 1.34.1
I believe the patch below will fix Johan's immediate problems; I would be grateful if he could try it. Anthony -- Anthony Williams Just Software Solutions Ltd - http://www.justsoftwaresolutions.co.uk Registered in England, Company Number 5478976. Registered Office: 15 Carrallack Mews, St Just, Cornwall, TR19 7UL Index: tss.cpp =================================================================== RCS file: /cvsroot/boost/boost/libs/thread/src/tss.cpp,v retrieving revision 1.16.10.4 diff -u -r1.16.10.4 tss.cpp --- tss.cpp 1 Oct 2006 12:57:18 -0000 1.16.10.4 +++ tss.cpp 22 May 2007 07:18:57 -0000 @@ -60,6 +60,7 @@ tss_data_mutex = 0; #if defined(BOOST_HAS_WINTHREADS) TlsFree(tss_data_native_key); + tss_data_native_key=0xFFFFFFFF; #elif defined(BOOST_HAS_PTHREADS) pthread_key_delete(tss_data_native_key); #elif defined(BOOST_HAS_MPTASKS) @@ -78,6 +79,9 @@ (*(*tss_data_cleanup_handlers)[i])((*slots)[i]); (*slots)[i] = 0; } +#if define(BOOST_HAS_WINTHREADS) + TlsSetValue(tss_data_native_key,0); +#endif tss_data_dec_use(lock); delete slots; }