From 591972dfa14d401621cb060b6aac45989c342cd8 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 28 Aug 2024 15:46:45 +0200 Subject: 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 7b8f295566..9a145a539f 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 0000000000..40010cf811 --- /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 6fcca6042f..8db761f9c9 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 -- cgit v1.2.3