From b4218833c521a42be6969e4f1fb1aa88aa82bf42 Mon Sep 17 00:00:00 2001 From: Anna Schumaker Date: Mon, 4 Jul 2016 20:52:09 -0400 Subject: [PATCH] core/tags/album: Immediately retry query on 503 error Signed-off-by: Anna Schumaker --- core/tags/album.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/core/tags/album.c b/core/tags/album.c index 67f551e1..e3c48bcc 100644 --- a/core/tags/album.c +++ b/core/tags/album.c @@ -89,12 +89,15 @@ static void __album_query_releaseid(struct album *album, Mb5Query *mb5) else param = g_strdup_printf("release:\"%s\"", album->al_name); - metadata = mb5_query_query(mb5, "release", "", "", 1, &query, ¶m); - result = mb5_query_get_lastresult(mb5); - if (result != 0) { - mb5_query_get_lasterrormessage(mb5, error, sizeof(error)); - g_printf("MusicBrainz: %s\n", error); - } + do { + metadata = mb5_query_query(mb5, "release", "", "", 1, &query, + ¶m); + result = mb5_query_get_lastresult(mb5); + if (result != 0) { + mb5_query_get_lasterrormessage(mb5, error, sizeof(error)); + g_printf("MusicBrainz: %s\n", error); + } + } while (result == 503); if (metadata) { __album_foreach_fetch(album, metadata); @@ -107,20 +110,17 @@ static void __album_query_releaseid(struct album *album, Mb5Query *mb5) static bool __album_fetch_artwork(struct album *album) { Mb5Query *mb5; - bool ret; if (album_artwork_exists(album)) return true; mb5 = mb5_query_new(OCARINA_NAME, NULL, 0); if (!mb5) - return true; + return false; __album_query_releaseid(album, mb5); - - ret = mb5_query_get_lasthttpcode(mb5) != 503; mb5_query_delete(mb5); - return ret; + return true; } static gchar *__album_key(const gchar *name, unsigned int year)