1
Fork 0
mirror of https://https.git.savannah.gnu.org/git/guix.git/ synced 2025-07-13 18:40:57 +02:00

gnu: libgit2: Patch bug in HTTP proxy support that shows on 302s.

Fixes guix/guix#87.

* gnu/packages/patches/libgit2-proxy-reconnection.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/version-control.scm (libgit2-1.9)[source]: Use it.

Change-Id: If05b55e616da4d98b3de0e38f6a0d815dd256b92
This commit is contained in:
Ludovic Courtès 2025-06-12 11:31:44 +02:00
parent 1a09cd1882
commit f53b9f309f
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
3 changed files with 22 additions and 0 deletions

View file

@ -1742,6 +1742,7 @@ dist_patch_DATA = \
%D%/packages/patches/libgda-skip-postgresql-tests.patch \ %D%/packages/patches/libgda-skip-postgresql-tests.patch \
%D%/packages/patches/libgdata-fix-tests.patch \ %D%/packages/patches/libgdata-fix-tests.patch \
%D%/packages/patches/libgit2-mtime-0.patch \ %D%/packages/patches/libgit2-mtime-0.patch \
%D%/packages/patches/libgit2-proxy-reconnection.patch \
%D%/packages/patches/libgit2-uninitialized-proxy-settings.patch \ %D%/packages/patches/libgit2-uninitialized-proxy-settings.patch \
%D%/packages/patches/libgnome-encoding.patch \ %D%/packages/patches/libgnome-encoding.patch \
%D%/packages/patches/libgnomeui-utf8.patch \ %D%/packages/patches/libgnomeui-utf8.patch \

View file

@ -0,0 +1,18 @@
Temporary fix for <https://github.com/libgit2/libgit2/issues/7081>.
Submitted as <https://github.com/libgit2/libgit2/pull/7082>.
diff --git a/src/libgit2/transports/httpclient.c b/src/libgit2/transports/httpclient.c
index e25e0a73a..ecefbcd3e 100644
--- a/src/libgit2/transports/httpclient.c
+++ b/src/libgit2/transports/httpclient.c
@@ -914,6 +914,10 @@ GIT_INLINE(git_http_parser_settings *) http_client_parser_settings(void)
static void reset_parser(git_http_client *client)
{
+ /* Force the proxy connection to be closed so a fresh connection is
+ opened for the next CONNECT request. */
+ client->proxy_connected = 0;
+
git_http_parser_init(&client->parser,
GIT_HTTP_PARSER_RESPONSE,
http_client_parser_settings());

View file

@ -1427,6 +1427,9 @@ write native speed custom Git applications in any language with bindings.")
(url "https://github.com/libgit2/libgit2") (url "https://github.com/libgit2/libgit2")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name "libgit2" version)) (file-name (git-file-name "libgit2" version))
(patches
(search-patches "libgit2-uninitialized-proxy-settings.patch"
"libgit2-proxy-reconnection.patch"))
(sha256 (sha256
(base32 (base32
"06ajn5i5l1209z7x7jxcpw68ph0a6g3q67bmx0jm381rr8cb4zdz")))))) "06ajn5i5l1209z7x7jxcpw68ph0a6g3q67bmx0jm381rr8cb4zdz"))))))