skip calling somexyspace() if mkroom ptr is NULL

This commit is contained in:
nhmall
2023-12-16 18:30:35 -05:00
parent 0a8f919ff3
commit 3e83d23b19
3 changed files with 7 additions and 7 deletions
+1 -1
View File
@@ -1510,7 +1510,7 @@ extern void place_branch(branch *, coordxy, coordxy) NO_NONNULLS;
extern boolean occupied(coordxy, coordxy); extern boolean occupied(coordxy, coordxy);
extern int okdoor(coordxy, coordxy); extern int okdoor(coordxy, coordxy);
extern void dodoor(coordxy, coordxy, struct mkroom *) NONNULLARG3; extern void dodoor(coordxy, coordxy, struct mkroom *) NONNULLARG3;
extern void mktrap(int, int, struct mkroom *, coord *); extern void mktrap(int, int, struct mkroom *, coord *) NO_NONNULLS;
extern void mkstairs(coordxy, coordxy, char, struct mkroom *, boolean); extern void mkstairs(coordxy, coordxy, char, struct mkroom *, boolean);
extern void mkinvokearea(void); extern void mkinvokearea(void);
extern void mineralize(int, int, int, int, boolean); extern void mineralize(int, int, int, int, boolean);
+5 -5
View File
@@ -14,7 +14,7 @@ static boolean generate_stairs_room_good(struct mkroom *, int);
static struct mkroom *generate_stairs_find_room(void); static struct mkroom *generate_stairs_find_room(void);
static void generate_stairs(void); static void generate_stairs(void);
static void mkfount(struct mkroom *); static void mkfount(struct mkroom *);
static boolean find_okay_roompos(struct mkroom *, coord *); static boolean find_okay_roompos(struct mkroom *, coord *) NONNULLARG12;
static void mksink(struct mkroom *); static void mksink(struct mkroom *);
static void mkaltar(struct mkroom *); static void mkaltar(struct mkroom *);
static void mkgrave(struct mkroom *); static void mkgrave(struct mkroom *);
@@ -24,7 +24,7 @@ static void fill_ordinary_room(struct mkroom *, boolean);
static void makelevel(void); static void makelevel(void);
static boolean bydoor(coordxy, coordxy); static boolean bydoor(coordxy, coordxy);
static void mktrap_victim(struct trap *); static void mktrap_victim(struct trap *);
static struct mkroom *find_branch_room(coord *); static struct mkroom *find_branch_room(coord *) NONNULLARG1;
static struct mkroom *pos_to_room(coordxy, coordxy); static struct mkroom *pos_to_room(coordxy, coordxy);
static boolean cardinal_nextto_room(struct mkroom *, coordxy, coordxy); static boolean cardinal_nextto_room(struct mkroom *, coordxy, coordxy);
static boolean place_niche(struct mkroom *, int *, coordxy *, coordxy *); static boolean place_niche(struct mkroom *, int *, coordxy *, coordxy *);
@@ -1456,7 +1456,7 @@ find_branch_room(coord *mp)
} else { } else {
croom = generate_stairs_find_room(); croom = generate_stairs_find_room();
if (!somexyspace(croom, mp)) if (croom && !somexyspace(croom, mp))
impossible("Can't place branch!"); impossible("Can't place branch!");
} }
return croom; return croom;
@@ -1722,7 +1722,7 @@ mktrap(
register int kind; register int kind;
struct trap *t; struct trap *t;
unsigned lvl = level_difficulty(); unsigned lvl = level_difficulty();
coord m; coord m = { 0, 0 };
/* no traps in pools */ /* no traps in pools */
if (tm && is_pool(tm->x, tm->y)) if (tm && is_pool(tm->x, tm->y))
@@ -1832,7 +1832,7 @@ mktrap(
return; return;
if (mktrapflags & MKTRAP_MAZEFLAG) if (mktrapflags & MKTRAP_MAZEFLAG)
mazexy(&m); mazexy(&m);
else if (!somexyspace(croom, &m)) else if (croom && !somexyspace(croom, &m))
return; return;
} while (occupied(m.x, m.y) } while (occupied(m.x, m.y)
|| (avoid_boulder && sobj_at(BOULDER, m.x, m.y))); || (avoid_boulder && sobj_at(BOULDER, m.x, m.y)));
+1 -1
View File
@@ -682,7 +682,7 @@ inside_room(struct mkroom* croom, coordxy x, coordxy y)
can return a non-accessible location, eg. inside a wall can return a non-accessible location, eg. inside a wall
if a themed room is not irregular, but has some non-room terrain */ if a themed room is not irregular, but has some non-room terrain */
boolean boolean
somexy(struct mkroom* croom,coord * c) somexy(struct mkroom *croom,coord *c)
{ {
int try_cnt = 0; int try_cnt = 0;
int i; int i;