From 2df658e1f38175b1cef862aa6133dac05d0d6ab9 Mon Sep 17 00:00:00 2001 From: Jonas Kvinge Date: Sun, 23 Nov 2025 01:11:59 +0100 Subject: [PATCH] ListenBrainzScrobbler: Ignore connection closed --- src/scrobbler/listenbrainzscrobbler.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/scrobbler/listenbrainzscrobbler.cpp b/src/scrobbler/listenbrainzscrobbler.cpp index 64946f3ab..131a06826 100644 --- a/src/scrobbler/listenbrainzscrobbler.cpp +++ b/src/scrobbler/listenbrainzscrobbler.cpp @@ -346,6 +346,12 @@ void ListenBrainzScrobbler::UpdateNowPlayingRequestFinished(QNetworkReply *reply QObject::disconnect(reply, nullptr, this, nullptr); reply->deleteLater(); + // ListenBrainz frequently close the connection, ignore any connection closed errors to avoid error popups + if (reply->error() == QNetworkReply::NetworkError::RemoteHostClosedError) { + JsonBaseRequest::Error(QStringLiteral("%1 (%2)").arg(reply->errorString()).arg(reply->error())); + return; + } + const JsonObjectResult json_object_result = ParseJsonObject(reply); if (!json_object_result.success()) { Error(json_object_result.error_message); @@ -451,6 +457,14 @@ void ListenBrainzScrobbler::ScrobbleRequestFinished(QNetworkReply *reply, Scrobb submitted_ = false; + // ListenBrainz frequently close the connection, ignore any connection closed errors to avoid error popups + if (reply->error() == QNetworkReply::NetworkError::RemoteHostClosedError) { + JsonBaseRequest::Error(QStringLiteral("%1 (%2)").arg(reply->errorString()).arg(reply->error())); + cache_->ClearSent(cache_items); + submit_error_ = true; + return; + } + const JsonObjectResult json_object_result = ParseJsonObject(reply); if (json_object_result.success()) { const QJsonObject &json_object = json_object_result.json_object;