]> git.vpit.fr Git - perl/modules/Variable-Magic.git/commitdiff
Wizard ids are IV, not UV
authorVincent Pit <vince@profvince.com>
Mon, 28 Dec 2009 18:19:31 +0000 (19:19 +0100)
committerVincent Pit <vince@profvince.com>
Mon, 28 Dec 2009 18:19:31 +0000 (19:19 +0100)
Magic.xs

index 537f1e2e24dd19cc5731f4301bff1e9a76c12cd2..f26774dddf4a830ecddf812e3b295693e7546e4d 100644 (file)
--- a/Magic.xs
+++ b/Magic.xs
@@ -591,7 +591,7 @@ STATIC const MGWIZ *vmg_wizard_mgwiz(pTHX_ const SV *wiz) {
 
 STATIC const MAGIC *vmg_find(const SV *sv, const SV *wiz) {
  const MAGIC *mg, *moremagic;
UV wid;
IV wid;
 
  if (SvTYPE(sv) < SVt_PVMG)
   return NULL;
@@ -600,7 +600,7 @@ STATIC const MAGIC *vmg_find(const SV *sv, const SV *wiz) {
  for (mg = SvMAGIC(sv); mg; mg = moremagic) {
   moremagic = mg->mg_moremagic;
   if (mg->mg_type == PERL_MAGIC_ext && mg->mg_private == SIG_WIZ) {
-   UV zid = vmg_wizard_id(mg->mg_ptr);
+   IV zid = vmg_wizard_id(mg->mg_ptr);
    if (zid == wid)
     return mg;
   }
@@ -757,7 +757,7 @@ STATIC UV vmg_dispell(pTHX_ SV *sv, const SV *wiz) {
  U32 uvars = 0;
 #endif /* VMG_UVAR */
  MAGIC *mg, *prevmagic, *moremagic = NULL;
UV wid = vmg_wizard_id(wiz);
IV wid = vmg_wizard_id(wiz);
 
  if (SvTYPE(sv) < SVt_PVMG)
   return 0;
@@ -766,7 +766,7 @@ STATIC UV vmg_dispell(pTHX_ SV *sv, const SV *wiz) {
   moremagic = mg->mg_moremagic;
   if (mg->mg_type == PERL_MAGIC_ext && mg->mg_private == SIG_WIZ) {
    const MGWIZ *z   = vmg_wizard_mgwiz(mg->mg_ptr);
-   UV           zid = vmg_wizard_id(mg->mg_ptr);
+   IV           zid = vmg_wizard_id(mg->mg_ptr);
    if (zid == wid) {
 #if VMG_UVAR
     /* If the current has no uvar, short-circuit uvar deletion. */