diff options
author | Max Kellermann <max@duempel.org> | 2013-01-30 09:13:46 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2013-01-30 09:13:46 +0100 |
commit | f8ff45b212c0c666d676dba9df0936a3bf6e98a5 (patch) | |
tree | 7d86096c8a4e3cf46feb070ddb09f4101728bc41 /src/icy_server.c | |
parent | f5c0b0d3168d6c34010f86a4b6878b7181d10237 (diff) | |
download | mpd-f8ff45b212c0c666d676dba9df0936a3bf6e98a5.tar.gz mpd-f8ff45b212c0c666d676dba9df0936a3bf6e98a5.tar.xz mpd-f8ff45b212c0c666d676dba9df0936a3bf6e98a5.zip |
icy_server: pass pointer to _metadata_page()
Don't use va_list.
Diffstat (limited to 'src/icy_server.c')
-rw-r--r-- | src/icy_server.c | 18 |
1 files changed, 3 insertions, 15 deletions
diff --git a/src/icy_server.c b/src/icy_server.c index b6c89eaf6..4971bc0ee 100644 --- a/src/icy_server.c +++ b/src/icy_server.c @@ -85,9 +85,8 @@ icy_server_metadata_string(const char *stream_title, const char* stream_url) } struct page* -icy_server_metadata_page(const struct tag *tag, ...) +icy_server_metadata_page(const struct tag *tag, const enum tag_type *types) { - va_list args; const gchar *tag_items[TAG_NUM_OF_ITEM_TYPES]; gint last_item, item; guint position; @@ -100,22 +99,11 @@ icy_server_metadata_page(const struct tag *tag, ...) last_item = -1; - va_start(args, tag); - while (1) { - enum tag_type type; - const gchar *tag_item; - - type = va_arg(args, enum tag_type); - - if (type == TAG_NUM_OF_ITEM_TYPES) - break; - - tag_item = tag_get_value(tag, type); - + while (*types != TAG_NUM_OF_ITEM_TYPES) { + const gchar *tag_item = tag_get_value(tag, *types); if (tag_item) tag_items[++last_item] = tag_item; } - va_end(args); position = item = 0; while (position < sizeof(stream_title) && item <= last_item) { |