]> git.vpit.fr Git - perl/modules/Variable-Magic.git/blobdiff - Magic.xs
'store' and 'delete' uvar magics don't need the uvar/clear hack
[perl/modules/Variable-Magic.git] / Magic.xs
index ca90b7f0a781ec5870bb3aa3a00edc541bad0611..5dc98a6d3a9038579ade44e4eefa02856bf13bbb 100644 (file)
--- a/Magic.xs
+++ b/Magic.xs
@@ -1305,7 +1305,7 @@ STATIC I32 vmg_svt_val(pTHX_ IV action, SV *sv) {
   }
  }
 
- if (SvRMAGICAL(sv) && !tied) {
+ if (SvRMAGICAL(sv) && !tied && !(action & (HV_FETCH_ISSTORE|HV_DELETE))) {
   /* Temporarily hide the RMAGICAL flag of the hash so it isn't wrongly
    * mistaken for a tied hash by the rest of hv_common. It will be reset by
    * the op_ppaddr of a new fake op injected between the current and the next