diff --git a/librepo-PR148-clean-up-curl-target_handle.patch b/librepo-PR148-clean-up-curl-target_handle.patch new file mode 100644 index 0000000..bd55846 --- /dev/null +++ b/librepo-PR148-clean-up-curl-target_handle.patch @@ -0,0 +1,28 @@ +From e7d7a50ef8a6c2ac1c3492a15fffaab68546a49f Mon Sep 17 00:00:00 2001 +From: Jonathan Dieter +Date: Sun, 31 Mar 2019 18:04:32 +0100 +Subject: [PATCH] Clean up target->curl_handle rather than target->handle + +Cleaning up target->handle causes a segfault when this codepath is run, so +this patch fixes it so we clean up target->curl_handle + +Signed-off-by: Jonathan Dieter +--- + librepo/downloader.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/librepo/downloader.c b/librepo/downloader.c +index d7e2d70..9650f07 100644 +--- a/librepo/downloader.c ++++ b/librepo/downloader.c +@@ -1451,8 +1451,8 @@ prepare_next_transfer(LrDownload *dd, gboolean *candidatefound, GError **err) + if(target->zck_state == LR_ZCK_DL_FINISHED) { + g_debug("%s: Target already fully downloaded: %s", __func__, target->target->path); + target->state = LR_DS_FINISHED; +- curl_easy_cleanup(target->handle); +- target->handle = NULL; ++ curl_easy_cleanup(target->curl_handle); ++ target->curl_handle = NULL; + g_free(target->headercb_interrupt_reason); + target->headercb_interrupt_reason = NULL; + fclose(target->f); diff --git a/librepo.changes b/librepo.changes index 7b3d7b4..6ea8831 100644 --- a/librepo.changes +++ b/librepo.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Mar 31 18:26:16 UTC 2019 - Neal Gompa + +- Add patch to fix fetching zck-compressed repos (rh#1694411) + * Patch: librepo-PR148-clean-up-curl-target_handle.patch + ------------------------------------------------------------------- Sun Mar 31 15:04:35 UTC 2019 - Neal Gompa diff --git a/librepo.spec b/librepo.spec index 5c4c95f..e0746d1 100644 --- a/librepo.spec +++ b/librepo.spec @@ -38,6 +38,10 @@ Group: Development/Libraries/C and C++ URL: https://github.com/rpm-software-management/librepo Source0: %{url}/archive/%{version}/%{name}-%{version}.tar.gz +# Patches proposed upstream +## Clean up target->curl_handle rather than target->handle (rh#1694411) +Patch0101: librepo-PR148-clean-up-curl-target_handle.patch + BuildRequires: cmake BuildRequires: doxygen BuildRequires: gpgme-devel