From 328a4081d2ca9a99cbd87bf58133254dea77a86a Mon Sep 17 00:00:00 2001 From: Andre Noll Date: Tue, 15 Mar 2022 19:09:46 +0100 Subject: [PATCH] afs.c: Remove enum afs_table_num. The definition of afs_tables[] does not need this enumeration to initialize the array and everybody else just needs the number of elements which can as well be obtained with ARRAY_SIZE. Since enum values are of type int but ARRAY_SIZE expands to a size_t value we need an adjustment for a format string in open_afs_tables(). --- afs.c | 45 ++++++++++----------------------------------- 1 file changed, 10 insertions(+), 35 deletions(-) diff --git a/afs.c b/afs.c index 3da39f32..f9dd7583 100644 --- a/afs.c +++ b/afs.c @@ -34,42 +34,17 @@ #include "sideband.h" #include "command.h" -/** The osl tables used by afs. \sa \ref blob.c. */ -enum afs_table_num { - /** Contains audio file information. See \ref aft.c. */ - TBLNUM_AUDIO_FILES, - /** The table for the paraslash attributes. See \ref attribute.c. */ - TBLNUM_ATTRIBUTES, - /* - * Moods and playlists organize the current set of admissible files in - * an osl table which contains only volatile columns. Each row consists - * of a pointer to an audio file and the score value of this file. - */ - TBLNUM_SCORES, - /** - * A standard blob table containing the mood definitions. For details - * see \ref mood.c. - */ - TBLNUM_MOODS, - /** A blob table containing lyrics on a per-song basis. */ - TBLNUM_LYRICS, - /** Another blob table for images (for example album cover art). */ - TBLNUM_IMAGES, - /** Yet another blob table for storing standard playlists. */ - TBLNUM_PLAYLIST, - /** How many tables are in use? */ - NUM_AFS_TABLES +static struct afs_table afs_tables[] = { + {.init = aft_init, .name = "audio_files"}, + {.init = attribute_init, .name = "attributes"}, + {.init = score_init, .name = "scores"}, + {.init = moods_init, .name = "moods"}, + {.init = lyrics_init, .name = "lyrics"}, + {.init = images_init, .name = "images"}, + {.init = playlists_init, .name = "playlists"}, }; -static struct afs_table afs_tables[NUM_AFS_TABLES] = { - [TBLNUM_AUDIO_FILES] = {.init = aft_init, .name = "audio_files"}, - [TBLNUM_ATTRIBUTES] = {.init = attribute_init, .name = "attributes"}, - [TBLNUM_SCORES] = {.init = score_init, .name = "scores"}, - [TBLNUM_MOODS] = {.init = moods_init, .name = "moods"}, - [TBLNUM_LYRICS] = {.init = lyrics_init, .name = "lyrics"}, - [TBLNUM_IMAGES] = {.init = images_init, .name = "images"}, - [TBLNUM_PLAYLIST] = {.init = playlists_init, .name = "playlists"}, -}; +#define NUM_AFS_TABLES ARRAY_SIZE(afs_tables) struct command_task { /** The file descriptor for the local socket. */ @@ -692,7 +667,7 @@ static int open_afs_tables(void) int i, ret; get_database_dir(); - PARA_NOTICE_LOG("opening %d osl tables in %s\n", NUM_AFS_TABLES, + PARA_NOTICE_LOG("opening %zu osl tables in %s\n", NUM_AFS_TABLES, database_dir); for (i = 0; i < NUM_AFS_TABLES; i++) { ret = afs_tables[i].open(database_dir); -- 2.39.5