diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mpdclient.c | 9 |
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; |