summaryrefslogtreecommitdiff
path: root/perlapi.c
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>2000-11-25 20:52:17 +0000
committerGurusamy Sarathy <gsar@cpan.org>2000-11-25 20:52:17 +0000
commit14186584e0e2fb9aaf397c4678bc42015c6c9f7d (patch)
tree924db2bde875fbdf39afd6a16feea1b1c79b944a /perlapi.c
parent4962f91719848672e70f9032ef5ea7106800eb60 (diff)
downloadperl-14186584e0e2fb9aaf397c4678bc42015c6c9f7d.tar.gz
C<foreach my $x ...> in pseudo-fork()ed process may diddle
parent's memory; fix it by keeping track of the actual pad offset rather than a raw pointer (this change is probably also relevant to non-ithreads case to avoid fallout from reallocs of the pad array, but is currently only enabled for the ithreads case in the interests of minimal disruption to existing "well tested" code) p4raw-id: //depot/perl@7858
Diffstat (limited to 'perlapi.c')
-rw-r--r--perlapi.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/perlapi.c b/perlapi.c
index a2e73e4bd0..02c5aa3bca 100644
--- a/perlapi.c
+++ b/perlapi.c
@@ -2615,6 +2615,13 @@ Perl_save_re_context(pTHXo)
((CPerlObj*)pPerl)->Perl_save_re_context();
}
+#undef Perl_save_padsv
+void
+Perl_save_padsv(pTHXo_ PADOFFSET off)
+{
+ ((CPerlObj*)pPerl)->Perl_save_padsv(off);
+}
+
#undef Perl_save_sptr
void
Perl_save_sptr(pTHXo_ SV** sptr)