diff --git a/src/kernel/build.h b/src/kernel/build.h index 323003efd..39916365a 100644 --- a/src/kernel/build.h +++ b/src/kernel/build.h @@ -60,13 +60,7 @@ extern "C" { } extra; struct construction *improvement; - /* next level, if upgradable. if more than one of these items - * can be built (weapons, armour) per turn, must not be NULL, - * but point to the same type again: - * const_sword.improvement = &const_sword - * last level of a building points to NULL, as do objects of - * an unlimited size. - */ + /* next level, if upgradable. */ } construction; void free_construction(struct construction *cons); diff --git a/src/kernel/building.c b/src/kernel/building.c index 9decc9039..bb97f57b8 100644 --- a/src/kernel/building.c +++ b/src/kernel/building.c @@ -192,7 +192,6 @@ const char *buildingtype(const building_type * btype, const building * b, int bs } if (btype->construction && btype->construction->extra.name) { if (b) { - assert(b->type == btype); bsize = adjust_size(b, bsize); } for (con = btype->construction; con; con = con->improvement) { diff --git a/src/reports.c b/src/reports.c index 353ed09fe..9af18c1d2 100644 --- a/src/reports.c +++ b/src/reports.c @@ -386,7 +386,7 @@ const char **illusion) if (illusion) { *illusion = NULL; - if (is_building_type(b->type, "illusioncastle")) { + if (b->attribs && is_building_type(b->type, "illusioncastle")) { const attrib *a = a_find(b->attribs, &at_icastle); if (a != NULL) { *illusion = buildingtype(icastle_type(a), b, b->size);