From c88344dad43eb104c21a698baf16eabd75267b18 Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Sat, 7 Feb 2015 15:49:03 +0100 Subject: [PATCH] fire: Fix artillery splashing the bridge span under itself multifire() writes back the firing sector after applying damage. When an artillery unit on a bridge span commits suicide by shelling down the supporting bridge heads, this writeback puts the bridge span right back (less the land units and planes on it), triggering a seqno oops. On the next update of the bridge head, the bridge span falls again. Broken in commit fe5b266, v4.3.14. The problematic write back is superfluous. Remove it along with a few equally superfluous ones. Signed-off-by: Markus Armbruster --- src/lib/commands/mfir.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/lib/commands/mfir.c b/src/lib/commands/mfir.c index 788ad2eb..ef885940 100644 --- a/src/lib/commands/mfir.c +++ b/src/lib/commands/mfir.c @@ -352,7 +352,6 @@ multifire(void) pr("Target out of range.\n"); switch (type) { case EF_SECTOR: - putsect(&fsect); break; case EF_LAND: fland.lnd_mission = 0; @@ -437,7 +436,6 @@ multifire(void) } switch (attgp->ef_type) { case EF_SECTOR: - putsect(&fsect); break; case EF_SHIP: if ((target == targ_ship) || (target == targ_sub)) { @@ -445,7 +443,6 @@ multifire(void) shp_missdef(&fship, vict); } } - putship(fship.shp_uid, &fship); break; default: CANT_REACH();