From bf6ed643e01687ed21b3a21cb3f77a1042e22c15 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Sun, 4 Aug 2013 13:47:48 +0200 Subject: InputPlugin: pass config_param reference --- src/InputInit.cxx | 19 +++++++++++-------- src/InputPlugin.hxx | 2 +- src/input/CurlInputPlugin.cxx | 11 +++++------ src/input/FfmpegInputPlugin.cxx | 2 +- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/src/InputInit.cxx b/src/InputInit.cxx index 64cdfc7af..f6e40a6f9 100644 --- a/src/InputInit.cxx +++ b/src/InputInit.cxx @@ -44,8 +44,7 @@ input_plugin_config(const char *plugin_name, GError **error_r) const struct config_param *param = NULL; while ((param = config_get_next_param(CONF_INPUT, param)) != NULL) { - const char *name = - config_get_block_string(param, "plugin", NULL); + const char *name = param->GetBlockValue("plugin"); if (name == NULL) { g_set_error(error_r, input_quark(), 0, "input configuration without 'plugin' name in line %d", @@ -63,6 +62,8 @@ input_plugin_config(const char *plugin_name, GError **error_r) bool input_stream_global_init(GError **error_r) { + const config_param empty; + GError *error = NULL; for (unsigned i = 0; input_plugins[i] != NULL; ++i) { @@ -74,16 +75,18 @@ input_stream_global_init(GError **error_r) const struct config_param *param = input_plugin_config(plugin->name, &error); - if (param == NULL && error != NULL) { - g_propagate_error(error_r, error); - return false; - } + if (param == nullptr) { + if (error != nullptr) { + g_propagate_error(error_r, error); + return false; + } - if (!config_get_block_bool(param, "enabled", true)) + param = ∅ + } else if (!param->GetBlockValue("enabled", true)) /* the plugin is disabled in mpd.conf */ continue; - if (plugin->init == NULL || plugin->init(param, &error)) + if (plugin->init == NULL || plugin->init(*param, &error)) input_plugins_enabled[i] = true; else { g_propagate_prefixed_error(error_r, error, diff --git a/src/InputPlugin.hxx b/src/InputPlugin.hxx index a5cf912da..a1eb16339 100644 --- a/src/InputPlugin.hxx +++ b/src/InputPlugin.hxx @@ -39,7 +39,7 @@ struct input_plugin { * @return true on success, false if the plugin should be * disabled */ - bool (*init)(const struct config_param *param, GError **error_r); + bool (*init)(const config_param ¶m, GError **error_r); /** * Global deinitialization. Called once before MPD shuts diff --git a/src/input/CurlInputPlugin.cxx b/src/input/CurlInputPlugin.cxx index 33bacffc5..5e9cbf1d8 100644 --- a/src/input/CurlInputPlugin.cxx +++ b/src/input/CurlInputPlugin.cxx @@ -614,7 +614,7 @@ CurlSockets::DispatchSockets() */ static bool -input_curl_init(const struct config_param *param, +input_curl_init(const config_param ¶m, G_GNUC_UNUSED GError **error_r) { CURLcode code = curl_global_init(CURL_GLOBAL_ALL); @@ -627,11 +627,10 @@ input_curl_init(const struct config_param *param, http_200_aliases = curl_slist_append(http_200_aliases, "ICY 200 OK"); - proxy = config_get_block_string(param, "proxy", NULL); - proxy_port = config_get_block_unsigned(param, "proxy_port", 0); - proxy_user = config_get_block_string(param, "proxy_user", NULL); - proxy_password = config_get_block_string(param, "proxy_password", - NULL); + proxy = param.GetBlockValue("proxy"); + proxy_port = param.GetBlockValue("proxy_port", 0u); + proxy_user = param.GetBlockValue("proxy_user"); + proxy_password = param.GetBlockValue("proxy_password"); if (proxy == NULL) { /* deprecated proxy configuration */ diff --git a/src/input/FfmpegInputPlugin.cxx b/src/input/FfmpegInputPlugin.cxx index 1660f177d..3dad28730 100644 --- a/src/input/FfmpegInputPlugin.cxx +++ b/src/input/FfmpegInputPlugin.cxx @@ -76,7 +76,7 @@ input_ffmpeg_supported(void) } static bool -input_ffmpeg_init(G_GNUC_UNUSED const struct config_param *param, +input_ffmpeg_init(gcc_unused const config_param ¶m, G_GNUC_UNUSED GError **error_r) { av_register_all(); -- cgit v1.2.3