From 2ef118731d37ec897d143ae69715c190d2774861 Mon Sep 17 00:00:00 2001 From: Christopher Martin Date: Wed, 5 Aug 2009 19:07:43 +0100 Subject: Accept CDDB return code 211 ("found inexact matches") This code is returned when there is more than one CDDB entry for the disc in question. Before, when receiving a 211 response from a CDDB server, Xine would simply not display any CDDB information. Now one of the responses is displayed, on the theory that something is better than nothing. --- src/input/input_cdda.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/input/input_cdda.c b/src/input/input_cdda.c index c1cfb3d67..33ba0b299 100644 --- a/src/input/input_cdda.c +++ b/src/input/input_cdda.c @@ -1729,7 +1729,7 @@ static int _cdda_cddb_retrieve(cdda_input_plugin_t *this) { memset(&buffer, 0, sizeof(buffer)); err = _cdda_cddb_socket_read(this, buffer, sizeof(buffer) - 1); - if (err < 0 || (((err = _cdda_cddb_handle_code(buffer)) != 200) && (err != 210))) { + if (err < 0 || (((err = _cdda_cddb_handle_code(buffer)) != 200) && (err != 210) && (err != 211))) { xprintf(this->stream->xine, XINE_VERBOSITY_DEBUG, "input_cdda: cddb query command returned error code '%03d'.\n", err); _cdda_cddb_socket_close(this); @@ -1750,7 +1750,7 @@ static int _cdda_cddb_retrieve(cdda_input_plugin_t *this) { } } - if (err == 210) { + if ((err == 210) || (err == 211)) { memset(&buffer, 0, sizeof(buffer)); err = _cdda_cddb_socket_read(this, buffer, sizeof(buffer) - 1); if (err < 0) { -- cgit v1.2.3