summaryrefslogtreecommitdiff
path: root/reentr.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2003-04-01 16:36:52 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2003-04-01 16:36:52 +0000
commit05404ffef2713f4c61b42355c2a2ce1a95343c33 (patch)
tree0a0655bca7f94bda75941a7220ae39438233ae79 /reentr.c
parent12724655a0993f91aa01e1070345dfd5a3d78ed1 (diff)
downloadperl-05404ffef2713f4c61b42355c2a2ce1a95343c33.tar.gz
Integrate:
[ 19119] Address "5.8.1@19053: crypt_r() takes 128K per thread". p4raw-link: @19119 on //depot/maint-5.8/perl: 5338c2bbd71426ba96ace22615fafeda3d05e36d p4raw-link: @19053 on //depot/maint-5.8/perl: dab75801826d3b09804fff099d3631e91578dcd1 p4raw-id: //depot/perl@19122 p4raw-integrated: from //depot/maint-5.8/perl@19121 'copy in' reentr.c reentr.h reentr.pl (@19106..) 'merge in' pp.c (@19045..)
Diffstat (limited to 'reentr.c')
-rw-r--r--reentr.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/reentr.c b/reentr.c
index a2f1a19681..3b2a39a491 100644
--- a/reentr.c
+++ b/reentr.c
@@ -146,10 +146,8 @@ Perl_reentrant_init(pTHX) {
New(31338, PL_reentrant_buffer->_asctime_buffer, PL_reentrant_buffer->_asctime_size, char);
#endif /* HAS_ASCTIME_R */
#ifdef HAS_CRYPT_R
-#if defined(__GLIBC__) || defined(__EMX__)
- PL_reentrant_buffer->_crypt_struct.initialized = 0;
- /* work around glibc-2.2.5 bug */
- PL_reentrant_buffer->_crypt_struct.current_saltbits = 0;
+#if CRYPT_R_PROTO != REENTRANT_PROTO_B_CCD
+ PL_reentrant_buffer->_crypt_struct_buffer = 0;
#endif
#endif /* HAS_CRYPT_R */
#ifdef HAS_CTIME_R
@@ -230,6 +228,9 @@ Perl_reentrant_free(pTHX) {
Safefree(PL_reentrant_buffer->_asctime_buffer);
#endif /* HAS_ASCTIME_R */
#ifdef HAS_CRYPT_R
+#if CRYPT_R_PROTO != REENTRANT_PROTO_B_CCD
+ Safefree(PL_reentrant_buffer->_crypt_struct_buffer);
+#endif
#endif /* HAS_CRYPT_R */
#ifdef HAS_CTIME_R
Safefree(PL_reentrant_buffer->_ctime_buffer);