From 869e5e7c0c3736c1e476d1d83cbbd9b9269aec2e Mon Sep 17 00:00:00 2001 From: "nethack.allison" Date: Sat, 23 Mar 2002 17:27:52 +0000 Subject: [PATCH] more explode panic() You could still get a panic. To reproduce: - wizwish for a statue, and drop it - wizwish for a landmine, and apply it at same location as statue - move one square and wish for a boulder, drop it (automatically likely) - push the boulder on the landmine to trigger it. - the panic came from the statue this time. --- src/explode.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/explode.c b/src/explode.c index 66a66d908..4d073bc25 100644 --- a/src/explode.c +++ b/src/explode.c @@ -438,7 +438,7 @@ struct obj *obj; /* only scatter this obj */ && rn2(10)) { if (otmp->otyp == BOULDER) { pline("%s apart.", Tobjnam(otmp, "break")); - fracture_rock(otmp); /* the will place fragments on floor */ + fracture_rock(otmp); /* this will place fragments on floor */ obj_extract_self(otmp); place_object(otmp, sx, sy); if ((otmp = sobj_at(BOULDER, sx, sy)) != 0) { @@ -452,7 +452,8 @@ struct obj *obj; /* only scatter this obj */ if ((trap = t_at(sx,sy)) && trap->ttyp == STATUE_TRAP) deltrap(trap); pline("%s.", Tobjnam(otmp, "crumble")); - (void) break_statue(otmp); + (void) break_statue(otmp); /*this will place fragments on floor */ + obj_extract_self(otmp); place_object(otmp, sx, sy); /* put fragments on floor */ } used_up = TRUE; -- 2.40.0