commit: fadffed8cef0abcddccf66627a21bec4a6309075 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Tue Jun 17 16:28:54 2025 +0000 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> CommitDate: Tue Jun 17 16:29:43 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fadffed8
net-p2p/transmission: backport http announce fix Bug: https://bugs.gentoo.org/958253 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> .../transmission-4.0.6-http-announce-error.patch | 35 ++++++++++++++++++++++ ....0.6-r5.ebuild => transmission-4.0.6-r6.ebuild} | 1 + 2 files changed, 36 insertions(+) diff --git a/net-p2p/transmission/files/transmission-4.0.6-http-announce-error.patch b/net-p2p/transmission/files/transmission-4.0.6-http-announce-error.patch new file mode 100644 index 000000000000..a7aa1a554dc0 --- /dev/null +++ b/net-p2p/transmission/files/transmission-4.0.6-http-announce-error.patch @@ -0,0 +1,35 @@ +https://github.com/transmission/transmission/pull/7086 +https://bugs.gentoo.org/958253 + +From 036174aa0e3d1f878e2a629ffe3709942a947c06 Mon Sep 17 00:00:00 2001 +From: Yat Ho <[email protected]> +Date: Wed, 28 Aug 2024 21:09:05 +0800 +Subject: [PATCH] fix: don't process http announce error if already succeeded + +--- + libtransmission/announcer-http.cc | 8 ++------ + 1 file changed, 2 insertions(+), 6 deletions(-) + +diff --git a/libtransmission/announcer-http.cc b/libtransmission/announcer-http.cc +index cfb44022fab..4a231e64cea 100644 +--- a/libtransmission/announcer-http.cc ++++ b/libtransmission/announcer-http.cc +@@ -154,16 +154,12 @@ void onAnnounceDone(tr_web::FetchResponse const& web_response) + } + else if (got_all_responses) + { +- auto const* response_used = &response; +- + // All requests have been answered, but none were successful. + // Choose the one that went further to report. +- if (data->previous_response && !response.did_connect && !response.did_timeout) ++ if (data->previous_response) + { +- response_used = &*data->previous_response; ++ data->on_response(response.did_connect || response.did_timeout ? response : *data->previous_response); + } +- +- data->on_response(*response_used); + } + else + { diff --git a/net-p2p/transmission/transmission-4.0.6-r5.ebuild b/net-p2p/transmission/transmission-4.0.6-r6.ebuild similarity index 98% rename from net-p2p/transmission/transmission-4.0.6-r5.ebuild rename to net-p2p/transmission/transmission-4.0.6-r6.ebuild index d7bd281547f7..77fba8ab0c42 100644 --- a/net-p2p/transmission/transmission-4.0.6-r5.ebuild +++ b/net-p2p/transmission/transmission-4.0.6-r6.ebuild @@ -70,6 +70,7 @@ RDEPEND="${COMMON_DEPEND} PATCHES=( "${FILESDIR}/transmission-4.0.6-miniupnpc-2.2.8.patch" + "${FILESDIR}/transmission-4.0.6-http-announce-error.patch" ) src_prepare() {
