more #H267 - cursed figurine auto-activation

Figurine activation timer had the same problem as burning objects:
it didn't clear up worn object pointers when destroying the object.
This commit is contained in:
nethack.rankin
2007-03-16 02:40:21 +00:00
parent f480c57af0
commit 4e38da7ed9
2 changed files with 7 additions and 2 deletions

View File

@@ -339,6 +339,7 @@ make score file processing more bullet proof to avoid potential security issue
towel equipped in weapon, alternate weapon, or quiver slot can be applied
lit candle or potion of oil which burned out while equipped would leave stale
weapon/alternate-weapon/quiver pointer that could cause panic or crash
wielded/worn figurine which auto-transformed had same stale pointer bug
Platform- and/or Interface-Specific Fixes

View File

@@ -1852,8 +1852,12 @@ long timeout;
}
}
/* free figurine now */
obj_extract_self(figurine);
obfree(figurine, (struct obj *)0);
if (carried(figurine)) {
useup(figurine);
} else {
obj_extract_self(figurine);
obfree(figurine, (struct obj *)0);
}
if (redraw) newsym(cc.x, cc.y);
}