From a89d3d0ce5d236c10532b01182dc8b08625bb8ab Mon Sep 17 00:00:00 2001 From: eaglegai Date: Sat, 22 Oct 2022 03:06:03 +0000 Subject: [PATCH] fix wget killed by SIGSEGV --- backport-wget-1.21-segfault.patch | 39 +++++++++++++++++++++++++++++++ wget.spec | 11 +++++++-- 2 files changed, 48 insertions(+), 2 deletions(-) create mode 100644 backport-wget-1.21-segfault.patch diff --git a/backport-wget-1.21-segfault.patch b/backport-wget-1.21-segfault.patch new file mode 100644 index 0000000..de551c8 --- /dev/null +++ b/backport-wget-1.21-segfault.patch @@ -0,0 +1,39 @@ +From aecf5fbf1bf05e91c4900a814a12dc91a50dc788 Mon Sep 17 00:00:00 2001 +From: Darshit Shah +Date: Fri, 8 Oct 2021 20:34:46 +0200 +Subject: [PATCH] * ftp.c (ftp_loop_internal): Fix computation of + total_downloaded_bytes + +When continuing a FTP download, or not starting one because the file is +already fully retrieved, don't include the size of the file in the +total_downloaded_bytes. Only the actual amount of data retrieved over +the network should be considered there. + +Fixes: #61277 +Reported-By: Michal Ruprich +--- + src/ftp.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/ftp.c b/src/ftp.c +index a1fcaa50..e821b0f3 100644 +--- a/src/ftp.c ++++ b/src/ftp.c +@@ -2083,7 +2083,7 @@ ftp_loop_internal (struct url *u, struct url *original_url, struct fileinfo *f, + /* --dont-remove-listing was specified, so do count this towards the + number of bytes and files downloaded. */ + { +- total_downloaded_bytes += qtyread; ++ total_downloaded_bytes += (qtyread - restval); + numurls++; + } + +@@ -2098,7 +2098,7 @@ ftp_loop_internal (struct url *u, struct url *original_url, struct fileinfo *f, + downloaded if they're going to be deleted. People seeding proxies, + for instance, may want to know how many bytes and files they've + downloaded through it. */ +- total_downloaded_bytes += qtyread; ++ total_downloaded_bytes += (qtyread - restval); + numurls++; + + if (opt.delete_after && !input_file_url (opt.input_filename)) diff --git a/wget.spec b/wget.spec index 9184896..4de43c1 100644 --- a/wget.spec +++ b/wget.spec @@ -1,12 +1,13 @@ Name: wget Version: 1.21.2 -Release: 1 +Release: 2 Summary: A package for retrieving files using HTTP, HTTPS, FTP and FTPS the most widely-used Internet protocols. License: GPLv3+ Url: http://www.gnu.org/software/wget/ Source: https://ftp.gnu.org/gnu/wget/wget-%{version}.tar.gz -Patch6000: backport-wget-1.21-ssl-init-output.patch +Patch0: backport-wget-1.21-ssl-init-output.patch +Patch1: backport-wget-1.21-segfault.patch Provides: webclient bundled(gnulib) BuildRequires: perl-HTTP-Daemon python3 libuuid-devel perl-podlators libpsl-devel libmetalink-devel @@ -54,6 +55,12 @@ make check %{_infodir}/* %changelog +* Sat Oct 22 2022 gaihuiying - 1.21.2-2 +- Type:bugfix +- ID:NA +- SUG:NA +- DESC:fix find_cell(): wget killed by SIGSEGV + * Tue Dec 07 2021 xihaochen - 1.21.2-1 - Type:requirements - ID:NA -- Gitee