X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Flib%2F3rdparty%2Fmingw%2Ftlsmcrt.c;h=c5c01d9b8a6e90b4664b98b0d3974269ce82ae5c;hp=2450b8b9216ecc7851e1adcaad51dfaa80ba2740;hb=2d50d1e044a36cca1ef12d274f96dded077d3a23;hpb=d1cca9ae4213326fb8c948d6b79d03b77816eaf5 diff --git a/reactos/lib/3rdparty/mingw/tlsmcrt.c b/reactos/lib/3rdparty/mingw/tlsmcrt.c index 2450b8b9216..c5c01d9b8a6 100644 --- a/reactos/lib/3rdparty/mingw/tlsmcrt.c +++ b/reactos/lib/3rdparty/mingw/tlsmcrt.c @@ -11,3 +11,34 @@ we do tls cleanup in runtime and _CRT_MT has value 2. */ int _CRT_MT = 2; +// HACK around broken imports from libmingwex, until RosBE64 is updated +#ifdef _M_AMD64 + +#ifndef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN +#endif +#include +#include + +int __mingwthr_key_dtor (DWORD key, void (*dtor)(void *)); +int __mingwthr_remove_key_dtor (DWORD key); + +extern int ___w64_mingwthr_remove_key_dtor (DWORD key); +extern int ___w64_mingwthr_add_key_dtor (DWORD key, void (*dtor)(void *)); + +int +__mingwthr_remove_key_dtor (DWORD key) +{ + return ___w64_mingwthr_remove_key_dtor (key); +} + +int +__mingwthr_key_dtor (DWORD key, void (*dtor)(void *)) +{ + if (dtor) + return ___w64_mingwthr_add_key_dtor (key, dtor); + + return 0; +} +#endif +