(svn r3455) * Assert against modifying the outer border of a map into anything but MP_VOID. This might detect a bug that has been there for quite some time, if it hasn't been fixed already.
authormatthijs
Sat, 28 Jan 2006 09:45:25 +0000
changeset 2900 722c18106949
parent 2899 6ff001a44709
child 2901 6adc1bdca953
(svn r3455) * Assert against modifying the outer border of a map into anything but MP_VOID. This might detect a bug that has been there for quite some time, if it hasn't been fixed already.
tile.h
--- a/tile.h	Sat Jan 28 01:33:57 2006 +0000
+++ b/tile.h	Sat Jan 28 09:45:25 2006 +0000
@@ -89,6 +89,11 @@
 static inline void SetTileType(TileIndex tile, TileType type)
 {
 	assert(tile < MapSize());
+	/* Allow only MP_VOID to be set to border tiles. This code is put here since
+	 * it seems there is a bug that violates this somewhere. (Formely know as
+	 * the "old ship pf" bug, which presented a case in which this broke). It
+	 * can be removed as soon as  the bug is squashed. */
+	assert((TileX(tile) < MapMaxX() && TileY(tile) < MapMaxY()) || type == MP_VOID);
 	SB(_m[tile].type_height, 4, 4, type);
 }