diff options
author | Thomas Jansen <mithi@mithi.net> | 2010-09-25 15:00:43 +0200 |
---|---|---|
committer | Thomas Jansen <mithi@mithi.net> | 2010-09-25 15:00:43 +0200 |
commit | 28bcb8bdf568875eeea1349e39b7958d77c8fcc1 (patch) | |
tree | 17397be16e8067a48fd532a581081f68a1b17700 /src/decoder | |
parent | 9af9fd140032138894e4781caabee8a5a96edab8 (diff) | |
download | mpd-28bcb8bdf568875eeea1349e39b7958d77c8fcc1.tar.gz mpd-28bcb8bdf568875eeea1349e39b7958d77c8fcc1.tar.xz mpd-28bcb8bdf568875eeea1349e39b7958d77c8fcc1.zip |
eliminate g_error() usage
Replaced all occurrences of g_error() with MPD_ERROR() located in a new header
file 'mpd_error.h'. This macro uses g_critical() to print the error message
and then exits gracefully in contrast to g_error() which would internally call
abort() to produce a core dump.
The macro name is distinctive and allows to find all places with dubious error
handling. The long-term goal is to get rid of MPD_ERROR() altogether. To
facilitate the eventual removal of this macro it was added in a new header
file rather than to an existing header file.
This fixes #2995 and #3007.
Diffstat (limited to '')
-rw-r--r-- | src/decoder/mikmod_decoder_plugin.c | 5 | ||||
-rw-r--r-- | src/decoder_list.c | 5 | ||||
-rw-r--r-- | src/decoder_thread.c | 3 |
3 files changed, 8 insertions, 5 deletions
diff --git a/src/decoder/mikmod_decoder_plugin.c b/src/decoder/mikmod_decoder_plugin.c index 50b46f2af..91478e86f 100644 --- a/src/decoder/mikmod_decoder_plugin.c +++ b/src/decoder/mikmod_decoder_plugin.c @@ -19,6 +19,7 @@ #include "config.h" #include "decoder_api.h" +#include "mpd_error.h" #include <glib.h> #include <mikmod.h> @@ -110,8 +111,8 @@ mikmod_decoder_init(const struct config_param *param) mikmod_sample_rate = config_get_block_unsigned(param, "sample_rate", 44100); if (!audio_valid_sample_rate(mikmod_sample_rate)) - g_error("Invalid sample rate in line %d: %u", - param->line, mikmod_sample_rate); + MPD_ERROR("Invalid sample rate in line %d: %u", + param->line, mikmod_sample_rate); md_device = 0; md_reverb = 0; diff --git a/src/decoder_list.c b/src/decoder_list.c index f91d635dc..d76050023 100644 --- a/src/decoder_list.c +++ b/src/decoder_list.c @@ -22,6 +22,7 @@ #include "decoder_plugin.h" #include "utils.h" #include "conf.h" +#include "mpd_error.h" #include <glib.h> @@ -198,8 +199,8 @@ decoder_plugin_config(const char *plugin_name) const char *name = config_get_block_string(param, "plugin", NULL); if (name == NULL) - g_error("decoder configuration without 'plugin' name in line %d", - param->line); + MPD_ERROR("decoder configuration without 'plugin' name in line %d", + param->line); if (strcmp(name, plugin_name) == 0) return param; diff --git a/src/decoder_thread.c b/src/decoder_thread.c index a75f09d37..1a91b6566 100644 --- a/src/decoder_thread.c +++ b/src/decoder_thread.c @@ -32,6 +32,7 @@ #include "mapper.h" #include "path.h" #include "uri.h" +#include "mpd_error.h" #include <glib.h> @@ -479,5 +480,5 @@ decoder_thread_start(struct decoder_control *dc) dc->thread = g_thread_create(decoder_task, dc, true, &e); if (dc->thread == NULL) - g_error("Failed to spawn decoder task: %s", e->message); + MPD_ERROR("Failed to spawn decoder task: %s", e->message); } |