summaryrefslogtreecommitdiff
path: root/pp_sys.c
diff options
context:
space:
mode:
authorMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-11-11 12:48:26 +0000
committerMalcolm Beattie <mbeattie@sable.ox.ac.uk>1997-11-11 12:48:26 +0000
commit38a03e6ea6b9b346c41b9006fbeedc3b0f0130b2 (patch)
treedfad8700b788597b91a0ada8768e7b083306c4b7 /pp_sys.c
parent57d3b86dc9b74a9b2d9e24c40494104c74f62be7 (diff)
downloadperl-38a03e6ea6b9b346c41b9006fbeedc3b0f0130b2.tar.gz
Fix up $@ (ERRSV now refers to GvSV(errgv) for non-threaded perl and
thr->errsv for threaded perl). Fix pp_tie and pp_dbmopen to use GvCV(gv) instead of gv so AUTOLOAD stuff works. All tests now pass again for non-threaded perl. Enhanced perl_get_sv to return per-thread magicals where necessary for threaded perl. p4raw-id: //depot/perl@228
Diffstat (limited to 'pp_sys.c')
-rw-r--r--pp_sys.c22
1 files changed, 11 insertions, 11 deletions
diff --git a/pp_sys.c b/pp_sys.c
index 5eaa1e19d9..77dd6180c3 100644
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -278,10 +278,10 @@ PP(pp_warn)
tmps = SvPV(TOPs, na);
}
if (!tmps || !*tmps) {
- (void)SvUPGRADE(errsv, SVt_PV);
- if (SvPOK(errsv) && SvCUR(errsv))
- sv_catpv(errsv, "\t...caught");
- tmps = SvPV(errsv, na);
+ (void)SvUPGRADE(ERRSV, SVt_PV);
+ if (SvPOK(ERRSV) && SvCUR(ERRSV))
+ sv_catpv(ERRSV, "\t...caught");
+ tmps = SvPV(ERRSV, na);
}
if (!tmps || !*tmps)
tmps = "Warning: something's wrong";
@@ -303,10 +303,10 @@ PP(pp_die)
tmps = SvPV(TOPs, na);
}
if (!tmps || !*tmps) {
- (void)SvUPGRADE(errsv, SVt_PV);
- if (SvPOK(errsv) && SvCUR(errsv))
- sv_catpv(errsv, "\t...propagated");
- tmps = SvPV(errsv, na);
+ (void)SvUPGRADE(ERRSV, SVt_PV);
+ if (SvPOK(ERRSV) && SvCUR(ERRSV))
+ sv_catpv(ERRSV, "\t...propagated");
+ tmps = SvPV(ERRSV, na);
}
if (!tmps || !*tmps)
tmps = "Died";
@@ -550,7 +550,7 @@ PP(pp_tie)
CATCH_SET(oldcatch);
#else
ENTER;
- perl_call_sv((SV*)gv, G_SCALAR);
+ perl_call_sv((SV*)GvCV(gv), G_SCALAR);
SPAGAIN;
#endif
sv = TOPs;
@@ -680,7 +680,7 @@ PP(pp_dbmopen)
runops();
#else
PUTBACK;
- perl_call_sv((SV*)gv, G_SCALAR);
+ perl_call_sv((SV*)GvCV(gv), G_SCALAR);
#endif
SPAGAIN;
@@ -707,7 +707,7 @@ PP(pp_dbmopen)
if (op = pp_entersub(ARGS))
runops();
#else
- perl_call_sv((SV*)gv, G_SCALAR);
+ perl_call_sv((SV*)GvCV(gv), G_SCALAR);
#endif
SPAGAIN;
}