]> git.vpit.fr Git - perl/modules/Variable-Magic.git/blobdiff - Magic.xs
Fix the B stashes cache cloning, and really use it for blessing op objects
[perl/modules/Variable-Magic.git] / Magic.xs
index 25d1d1c05dca695df4b81a2ed1d2fa7e9fb03373..9772cd7fbf60ff9b6bd5da55f183a82540984fe4 100644 (file)
--- a/Magic.xs
+++ b/Magic.xs
@@ -646,7 +646,7 @@ STATIC SV *vmg_op_info(pTHX_ unsigned int opinfo) {
   case VMG_OP_INFO_OBJECT: {
    dMY_CXT;
    return sv_bless(sv_2mortal(newRV_noinc(newSViv(PTR2IV(PL_op)))),
-                           gv_stashpv(vmg_opclassnames[vmg_opclass(PL_op)], 1));
+                   MY_CXT.b__op_stashes[vmg_opclass(PL_op)]);
   }
   default:
    break;
@@ -1247,7 +1247,7 @@ CODE:
   MY_CXT.wizards     = hv;
   for (c = 0; c < OPc_MAX; ++c) {
    MY_CXT.b__op_stashes[c] = (had_b__op_stash & (((U32) 1) << c))
-                              ? gv_stashpv("B::OP", 1) : NULL;
+                              ? gv_stashpv(vmg_opclassnames[c], 1) : NULL;
   }
  }