From ae15406fdf6ac44dc7a15e62c2d0056abe7192ac Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Sat, 15 Sep 2007 09:39:18 +0200 Subject: [PATCH] audio_format_name(): Add an assert(). The paraslash code should never request the name of an audio format with invalid id. Introduce the ARRAY_SIZE macro to get the proper upper bound for the number of supported audio formats. --- para.h | 5 ++++- vss.c | 7 ++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/para.h b/para.h index a580b14c..5dec070f 100644 --- a/para.h +++ b/para.h @@ -206,5 +206,8 @@ static inline int para_random(unsigned max) return ((max + 0.0) * (rand() / (RAND_MAX + 1.0))); } -/* Round up x to a multiple of y */ +/** Round up x to a multiple of y */ #define ROUND_UP(x, y) (((x) + (y - 1) / (y)) * (y)) + +/** Get the size of an array */ +#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) diff --git a/vss.c b/vss.c index 2de7a30c..98ad11f6 100644 --- a/vss.c +++ b/vss.c @@ -144,16 +144,17 @@ unsigned int vss_paused(void) } /** - * get the name of the given audio format + * Get the name of the given audio format. * - * \param i the audio format number + * \param i The audio format number. * * This returns a pointer to statically allocated memory so it * must not be freed by the caller. */ const char *audio_format_name(int i) { - return i >= 0? afl[i].name : "(none)"; + assert(i >= 0 && i < ARRAY_SIZE(afl)); + return afl[i].name; } /** -- 2.39.5