diff options
author | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-01-13 15:37:48 +0000 |
---|---|---|
committer | Nick Ing-Simmons <nik@tiuk.ti.com> | 2002-01-13 15:37:48 +0000 |
commit | 222c300afb1c8466398010a3403616462c302185 (patch) | |
tree | 3052a09d573e8ac38633d71d30ee02d9283c0799 /win32/perllib.c | |
parent | 26bf1728b5f258bdc26021f9eb583c46488b8859 (diff) | |
download | perl-222c300afb1c8466398010a3403616462c302185.tar.gz |
Win32 fixes:
- vmem.h hack to handle free-by-wrong-thread after eval "".
- Initialize timerid
p4raw-id: //depot/perlio@14232
Diffstat (limited to 'win32/perllib.c')
-rw-r--r-- | win32/perllib.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/win32/perllib.c b/win32/perllib.c index 6243a79fd3..4e4c113964 100644 --- a/win32/perllib.c +++ b/win32/perllib.c @@ -33,6 +33,17 @@ xs_init(pTHX) #include "perlhost.h" +void +win32_checkTLS(PerlInterpreter *host_perl) +{ + dTHX; + if (host_perl != my_perl) { + int *nowhere = NULL; + *nowhere = 0; + abort(); + } +} + EXTERN_C void perl_get_host_info(struct IPerlMemInfo* perlMemInfo, struct IPerlMemInfo* perlMemSharedInfo, @@ -105,6 +116,7 @@ perl_alloc_override(struct IPerlMem** ppMem, struct IPerlMem** ppMemShared, pHost->m_pHostperlProc); if (my_perl) { w32_internal_host = pHost; + pHost->host_perl = my_perl; } } return my_perl; @@ -127,6 +139,7 @@ perl_alloc(void) pHost->m_pHostperlProc); if (my_perl) { w32_internal_host = pHost; + pHost->host_perl = my_perl; } } return my_perl; @@ -287,6 +300,7 @@ perl_clone_host(PerlInterpreter* proto_perl, UV flags) { h->m_pHostperlProc ); proto_perl->Isys_intern.internal_host = h; + h->host_perl = proto_perl; return proto_perl; } |