~ruther/guix-local

591972dfa14d401621cb060b6aac45989c342cd8 — Ludovic Courtès 1 year, 9 months ago 21c6d42
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
M gnu/local.mk => gnu/local.mk +1 -0
@@ 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		\

A gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch => gnu/packages/patches/libgit2-uninitialized-proxy-settings.patch +19 -0
@@ 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;

M gnu/packages/version-control.scm => gnu/packages/version-control.scm +2 -0
@@ 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