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:
@@ -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
|
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
|
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
|
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
|
Platform- and/or Interface-Specific Fixes
|
||||||
|
|||||||
+6
-2
@@ -1852,8 +1852,12 @@ long timeout;
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
/* free figurine now */
|
/* free figurine now */
|
||||||
obj_extract_self(figurine);
|
if (carried(figurine)) {
|
||||||
obfree(figurine, (struct obj *)0);
|
useup(figurine);
|
||||||
|
} else {
|
||||||
|
obj_extract_self(figurine);
|
||||||
|
obfree(figurine, (struct obj *)0);
|
||||||
|
}
|
||||||
if (redraw) newsym(cc.x, cc.y);
|
if (redraw) newsym(cc.x, cc.y);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user