From 8b9f34448483c681b04c5c1f1acfd694761c586e Mon Sep 17 00:00:00 2001 From: CTD Date: Thu, 7 Aug 2014 11:24:55 +0200 Subject: [PATCH] Fixing server crash MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mit rules.region_owner_pay_building ein kann es vorkommen, das wegen einem leeren Gebäude die größte Burg in der Region gesucht wird. Wenn es aber keine Burg in der Region gibt, wird building_owner mit NULL aufgerufen. Das musste abgefangen werden. --- src/kernel/building.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/kernel/building.c b/src/kernel/building.c index 19c97fa3b..e0e52e960 100644 --- a/src/kernel/building.c +++ b/src/kernel/building.c @@ -682,6 +682,9 @@ static unit *building_owner_ex(const building * bld, const struct faction * last unit *building_owner(const building * bld) { + if (!bld) { + return NULL; + } unit *owner = bld->_owner; if (!owner || (owner->building!=bld || owner->number<=0)) { unit * heir = building_owner_ex(bld, owner?owner->faction:0);