From 5d6de9e0f527db9658b05b877496c824faa96c55 Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Thu, 19 Jul 2018 15:44:16 -0400 Subject: Add ARRAY_LEN macro --- client.c | 2 +- server.c | 2 +- torus.h | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/client.c b/client.c index a7299ac..ea2eba7 100644 --- a/client.c +++ b/client.c @@ -197,7 +197,7 @@ static void readInput(void) { break; case 'q': endwin(); exit(EX_OK); break; case 'Q': { - if ((input.color & 0x07) < SPAWNS_LEN) { + if ((input.color & 0x07) < ARRAY_LEN(SPAWNS)) { clientSpawn(input.color & 0x07); } else { clientSpawn(0); diff --git a/server.c b/server.c index 7312dba..0a8f365 100644 --- a/server.c +++ b/server.c @@ -218,7 +218,7 @@ static bool clientUpdate(const struct Client *client, const struct Client *old) } static bool clientSpawn(struct Client *client, uint8_t spawn) { - if (spawn >= SPAWNS_LEN) return false; + if (spawn >= ARRAY_LEN(SPAWNS)) return false; struct Client old = *client; client->tileX = SPAWNS[spawn].tileX; client->tileY = SPAWNS[spawn].tileY; diff --git a/torus.h b/torus.h index c058a4d..b5a0235 100644 --- a/torus.h +++ b/torus.h @@ -24,6 +24,8 @@ #define PACKED __attribute__((packed)) #define ALIGNED(x) __attribute__((aligned(x))) +#define ARRAY_LEN(a) (sizeof(a) / sizeof((a)[0])) + #undef COLOR_BLACK #undef COLOR_RED #undef COLOR_GREEN @@ -86,7 +88,6 @@ static const struct { { TILE_COLS * 1 / 4, TILE_ROWS * 1 / 4 }, // SE { TILE_COLS * 3 / 4, TILE_ROWS * 1 / 4 }, // SW }; -static const size_t SPAWNS_LEN = sizeof(SPAWNS) / sizeof(SPAWNS[0]); enum { MAP_ROWS = 11, -- cgit 1.4.1