w->owner = NULL;
#endif /* VMG_MULTIPLICITY */
- dMY_CXT;
- wiz = hv_delete(MY_CXT, buf, sprintf(buf, "%u", w->sig), 0);
+ {
+ dMY_CXT;
+ if (hv_delete(MY_CXT, buf, sprintf(buf, "%u", w->sig), 0) != wiz)
+ return 0;
+ }
SvFLAGS(wiz) |= SVf_BREAK;
FREETMPS;
croak(vmg_invalid_wiz);
}
- dMY_CXT;
-
- if (!hv_fetch(MY_CXT, buf, sprintf(buf, "%u", sig), 0))
- sig = 0;
-
+ {
+ dMY_CXT;
+ if (!hv_fetch(MY_CXT, buf, sprintf(buf, "%u", sig), 0))
+ sig = 0;
+ }
return sig;
}
croak(vmg_invalid_wiz);
}
- dMY_CXT;
-
- return (old = hv_fetch(MY_CXT, buf, sprintf(buf, "%u", sig), 0))
- ? *old : NULL;
+ {
+ dMY_CXT;
+ return (old = hv_fetch(MY_CXT, buf, sprintf(buf, "%u", sig), 0))
+ ? *old : NULL;
+ }
}
#define VMG_SET_CB(S, N) \