aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/mpdclient.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/mpdclient.c b/src/mpdclient.c
index c15c34d6d..fcdaa4ef4 100644
--- a/src/mpdclient.c
+++ b/src/mpdclient.c
@@ -123,16 +123,17 @@ mpdclient_finish_command(mpdclient_t *c)
mpd_finishCommand(c->connection);
if (c->connection->error) {
- gchar *msg = locale_to_utf8(c->connection->errorStr);
gint error = c->connection->error;
-
- if (error == MPD_ERROR_ACK)
- error = error | (c->connection->errorCode << 8);
+ gchar *msg;
if (c->connection->errorCode == MPD_ACK_ERROR_PERMISSION &&
screen_auth(c) == 0)
return 0;
+ if (error == MPD_ERROR_ACK)
+ error = error | (c->connection->errorCode << 8);
+
+ msg = locale_to_utf8(c->connection->errorStr);
error_cb(c, error, msg);
g_free(msg);
return error;