TlsAlloc limitation in winxp mode

Michael Ost most at museresearch.com
Fri Mar 18 13:32:06 CST 2005


On Fri, 2005-03-18 at 03:30, Alexandre Julliard wrote:
> Michael Ost <most at museresearch.com> writes:
> 
> > With the emulation mode set to "winxp" I can only TlsAlloc 64 indexes,
> > even though the MSDN docs say there should be at least 20 million.
> > 
> > http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/thread_local_storage.asp
> > 
> > Has anyone done any work on this? Any workaround/hackarounds? ... mo
> 
> It's not 20 million, it's 1088 (64 + 1024). You need to use the TLS
> expansion slots for the extra 1024, something like this (completely
> untested):
<snip patch>

Thanks. I suspected that was the way to go. Should the TlsAlloc code, or
perhaps the thread init code, check on the windows emulation version and
allow the right number of slots... 64, 80 or 1088?

- mo

===================================
Michael Ost, Software Architect
Muse Research, Inc.
most at museresearch.com




More information about the wine-devel mailing list