X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=gv.c;h=6dc45e7450b1f4d0e46ad02870b3b4658d8c89e3;hb=fce230d754ec6ae18a0b1289155fa97e3b459bbc;hp=02f428b45b405b5e8f1fa0a2d9291d47a2ed3116;hpb=436933950535d3942db23a87c1a6344f566a9af4;p=p5sagit%2Fp5-mst-13.2.git diff --git a/gv.c b/gv.c index 02f428b..6dc45e7 100644 --- a/gv.c +++ b/gv.c @@ -372,7 +372,7 @@ Perl_gv_fetchmethod_autoload(pTHX_ HV *stash, const char *name, I32 autoload) gv = gv_fetchmeth(stash, name, nend - name, 0); if (!gv) { - if (strEQ(name,"import")) + if (strEQ(name,"import") || strEQ(name,"unimport")) gv = (GV*)&PL_sv_yes; else if (autoload) gv = gv_autoload4(stash, name, nend - name, TRUE); @@ -819,6 +819,7 @@ Perl_gv_fetchpv(pTHX_ const char *nambeg, I32 add, I32 sv_type) else { AV* av = GvAVn(gv); sv_magic((SV*)av, Nullsv, 'D', Nullch, 0); + SvREADONLY_on(av); } goto magicalize; case '#': @@ -869,6 +870,7 @@ Perl_gv_fetchpv(pTHX_ const char *nambeg, I32 add, I32 sv_type) else { AV* av = GvAVn(gv); sv_magic((SV*)av, (SV*)av, 'D', Nullch, 0); + SvREADONLY_on(av); } /* FALL THROUGH */ case '1':