From 591972dfa14d401621cb060b6aac45989c342cd8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 28 Aug 2024 15:46:45 +0200 Subject: [PATCH] gnu: libgit2@1.8: Fix use of uninitialized value. * gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/version-control.scm (libgit2-1.8)[source]: Use it. Change-Id: I6b0f009d352ddadfcc57b945baea0dcc1bac0589 --- gnu/local.mk | 1 + ...libgit2-uninitialized-proxy-settings.patch | 19 +++++++++++++++++++ gnu/packages/version-control.scm | 2 ++ 3 files changed, 22 insertions(+) create mode 100644 gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7b8f295566ca48de54e5686f759d4597d0230917..9a145a539fea5ad2166f69a33ac6a05f8bc3d8ff 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1632,6 +1632,7 @@ dist_patch_DATA = \ %D%/packages/patches/libgda-fix-missing-initialization.patch \ %D%/packages/patches/libgda-skip-postgresql-tests.patch \ %D%/packages/patches/libgit2-mtime-0.patch \ + %D%/packages/patches/libgit2-uninitialized-proxy-settings.patch \ %D%/packages/patches/libgnome-encoding.patch \ %D%/packages/patches/libgnomeui-utf8.patch \ %D%/packages/patches/libgrss-CVE-2016-2001.patch \ diff --git a/gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch b/gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch new file mode 100644 index 0000000000000000000000000000000000000000..40010cf811c66f2a61c8664dda4bacd7efd4ca43 --- /dev/null +++ b/gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch @@ -0,0 +1,19 @@ +Fix use of uninitialized value in the http-parser backend, a bug introduced +in libgit2 1.8.1: + + https://github.com/libgit2/libgit2/pull/6870 + +This code is exercised by 'tests/proxy.scm' in Guile-Git. + +diff --git a/src/libgit2/transports/httpparser.c b/src/libgit2/transports/httpparser.c +index 50ba6d2e0..1f0e65372 100644 +--- a/src/libgit2/transports/httpparser.c ++++ b/src/libgit2/transports/httpparser.c +@@ -71,6 +71,7 @@ size_t git_http_parser_execute( + { + struct http_parser_settings settings_proxy; + ++ settings_proxy.on_status = NULL; + settings_proxy.on_message_begin = parser->settings.on_message_begin ? on_message_begin : NULL; + settings_proxy.on_url = parser->settings.on_url ? on_url : NULL; + settings_proxy.on_header_field = parser->settings.on_header_field ? on_header_field : NULL; diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 6fcca6042fb38e1232086cd7f0b5eeb31f9c1249..8db761f9c9c8dc115e6b49f2abb8a1b92d88dfd7 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1082,6 +1082,8 @@ write native speed custom Git applications in any language with bindings.") (sha256 (base32 "1mh55804cvxl2cyl4clinajzgfn3zmlhacnv1pdvdj4w6z2w4si7")) + (patches + (search-patches "libgit2-uninitialized-proxy-settings.patch")) (snippet '(begin (for-each delete-file-recursively