ntdll: TlsIndex should not actually contain tls indices.
It actually contains a -1 if the module has a tls slot and a 0 if it doesn't.
Putting tls indices in it breaks initialization of the D runtime if a D dll
is loaded into a tls-free exe and gets assigned tls slot 0, as it makes the
D runtime think the OS hasn't initialized a tls slot:
https://github.com/dlang/dmd/blob/6bf60ea0eb174631ede0074a77d3898d943e0b30/druntime/src/core/sys/windows/dll.d#L354-L355
Showing
Please
register
or
sign in
to comment