summaryrefslogtreecommitdiff
path: root/sv.c
diff options
context:
space:
mode:
authorDave Mitchell <davem@fdisolutions.com>2005-12-29 12:00:29 +0000
committerDave Mitchell <davem@fdisolutions.com>2005-12-29 12:00:29 +0000
commitf16dd614412ea67a8eb64bb09a88fccdbd9db6b6 (patch)
treea5b7bf6146f445a04a570b1e0302ff7d2c1f5fbb /sv.c
parent85ce96a160e902929b94338ada20cf46b265d595 (diff)
downloadperl-f16dd614412ea67a8eb64bb09a88fccdbd9db6b6.tar.gz
re-implement MY_CXT API more efficiently, and add explicit
interpeter arg variant p4raw-id: //depot/perl@26523
Diffstat (limited to 'sv.c')
-rw-r--r--sv.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/sv.c b/sv.c
index d797a9fa7c..f11f219414 100644
--- a/sv.c
+++ b/sv.c
@@ -10394,6 +10394,14 @@ perl_clone_using(PerlInterpreter *proto_perl, UV flags,
}
else
PL_exitlist = (PerlExitListEntry*)NULL;
+
+ PL_my_cxt_size = proto_perl->Imy_cxt_size;
+ if (PL_my_cxt_size) {
+ Newx(PL_my_cxt_list, PL_my_cxt_size, void *);
+ Copy(proto_perl->Imy_cxt_list, PL_my_cxt_list, PL_my_cxt_size, void *);
+ }
+ else
+ PL_my_cxt_list = (void**)NULL;
PL_modglobal = hv_dup_inc(proto_perl->Imodglobal, param);
PL_custom_op_names = hv_dup_inc(proto_perl->Icustom_op_names,param);
PL_custom_op_descs = hv_dup_inc(proto_perl->Icustom_op_descs,param);