From: Markus Armbruster Date: Sun, 27 Jan 2013 09:31:49 +0000 (+0100) Subject: sect: Catch clobbered sector coordinates in sct_prewrite() X-Git-Tag: v4.3.32~47 X-Git-Url: http://git.pond.sub.org/?p=empserver;a=commitdiff_plain;h=6f0cd10b812dc04d2bf08b409a528dff5c2a6f33 sect: Catch clobbered sector coordinates in sct_prewrite() Signed-off-by: Markus Armbruster --- diff --git a/src/lib/subs/sect.c b/src/lib/subs/sect.c index ba6655fd8..b300b05d1 100644 --- a/src/lib/subs/sect.c +++ b/src/lib/subs/sect.c @@ -29,7 +29,7 @@ * Known contributors to this file: * Dave Pare, 1989 * Steve McClure, 1996 - * Markus Armbruster, 2004-2010 + * Markus Armbruster, 2004-2013 */ #include @@ -60,9 +60,16 @@ sct_prewrite(int id, void *old, void *new) { struct sctstr *oldsp = old; struct sctstr *sp = new; + coord x, y; int mil, civs; natid own, prev_own; + sctoff2xy(&x, &y, sp->sct_uid); + if (CANT_HAPPEN(sp->sct_x != x || sp->sct_y != y)) { + sp->sct_x = x; + sp->sct_y = y; + } + bridge_damaged(sp); item_prewrite(sp->sct_item);