Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libsoup for openSUSE:Factory checked 
in at 2026-07-20 09:57:16
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libsoup (Old)
 and      /work/SRC/openSUSE:Factory/.libsoup.new.24530 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libsoup"

Mon Jul 20 09:57:16 2026 rev:171 rq:1366370 version:3.6.6

Changes:
--------
--- /work/SRC/openSUSE:Factory/libsoup/libsoup.changes  2026-06-17 
16:17:43.801584064 +0200
+++ /work/SRC/openSUSE:Factory/.libsoup.new.24530/libsoup.changes       
2026-07-20 09:59:50.141130861 +0200
@@ -1,0 +2,15 @@
+Thu Jul 16 13:47:29 UTC 2026 - Michael Gorse <[email protected]>
+
+- Rename libsoup-CVE-2026-0716.patch to
+  libsoup-CVE-2026-12478.patch to reflect the new CVE assignment
+  (bsc#1271401 CVE-2026-12478).
+
+-------------------------------------------------------------------
+Wed Jul 15 12:52:55 UTC 2026 - Bjørn Lie <[email protected]>
+
+- Add fix-samsung-tv-playback.patch: Update the content length
+  decimal value when encoding is set to
+  SOUP_ENCODING_CONTENT_LENGTH
+- Refresh patches with quilt.
+
+-------------------------------------------------------------------

Old:
----
  libsoup-CVE-2026-0716.patch

New:
----
  fix-samsung-tv-playback.patch
  libsoup-CVE-2026-12478.patch

----------(Old B)----------
  Old:
- Rename libsoup-CVE-2026-0716.patch to
  libsoup-CVE-2026-12478.patch to reflect the new CVE assignment
----------(Old E)----------

----------(New B)----------
  New:
- Add fix-samsung-tv-playback.patch: Update the content length
  decimal value when encoding is set to
  New:- Rename libsoup-CVE-2026-0716.patch to
  libsoup-CVE-2026-12478.patch to reflect the new CVE assignment
  (bsc#1271401 CVE-2026-12478).
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libsoup.spec ++++++
--- /var/tmp/diff_new_pack.XSQZWP/_old  2026-07-20 09:59:50.773152130 +0200
+++ /var/tmp/diff_new_pack.XSQZWP/_new  2026-07-20 09:59:50.777152265 +0200
@@ -34,10 +34,14 @@
 Patch3:         libsoup-CVE-2026-2708.patch
 # PATCH-FIX-UPSTREAM libsoup-CVE-2026-1539.patch bsc#1257441, CVE-2026-1539, 
glgo#GNOME/libsoup#489 -- Also remove Proxy-Authorization header on cross 
origin redirect
 Patch4:         libsoup-CVE-2026-1539.patch
-# PATCH-FIX-UPSTREAM libsoup-CVE-2026-0716.patch bsc#1256418 [email protected] 
-- websocket: Fix out-of-bounds read when reading unmasked frame
-Patch5:         libsoup-CVE-2026-0716.patch
+# PATCH-FIX-UPSTREAM libsoup-CVE-2026-12478.patch bsc#1271401 [email protected] 
-- websocket: Fix out-of-bounds read when reading unmasked frame
+Patch5:         libsoup-CVE-2026-12478.patch
 # PATCH-FIX-UPSTREAM libsoup-CVE-2026-4271.patch bsc#1259767 [email protected] -- 
protect message io while reading and writing
 Patch6:         libsoup-CVE-2026-4271.patch
+# PATCH-FIX-UPSTREAM fix-samsung-tv-playback.patch -- Update the content 
length decimal value when encoding is set to SOUP_ENCODING_CONTENT_LENGTH
+Patch7:         fix-samsung-tv-playback.patch
+
+
 # PATCH-FIX-SLE libsoup-revert-dep-meson-0.62-shim01-e315cf2d.patch 
[email protected] -- Revert upstream e315cf2d to make libsoup build with meson 
0.54 for SLE-15-SP4/SP5.
 Patch1000:      libsoup-revert-dep-meson-0.62-shim01-e315cf2d.patch
 # PATCH-FIX-SLE libsoup-revert-dep-meson-0.62-shim02-6b34bc58.patch 
[email protected] -- Revert upstream 6b34bc58 to make libsoup build with meson 
0.54 for SLE-15-SP4/SP5.
@@ -46,6 +50,7 @@
 Patch1002:      libsoup-revert-dep-meson-0.62-part01-4209dbec.patch
 # PATCH-FIX-SLE libsoup-revert-dep-meson-0.62-part02-fd7ce01a.patch 
[email protected] -- Revert upstream fd7ce01a to make libsoup build with meson 
0.54 for SLE-15-SP4/SP5.
 Patch1003:      libsoup-revert-dep-meson-0.62-part02-fd7ce01a.patch
+
 BuildRequires:  glib-networking
 BuildRequires:  meson >= 0.53
 BuildRequires:  pkgconfig

++++++ _scmsync.obsinfo ++++++
--- /var/tmp/diff_new_pack.XSQZWP/_old  2026-07-20 09:59:50.809153341 +0200
+++ /var/tmp/diff_new_pack.XSQZWP/_new  2026-07-20 09:59:50.813153476 +0200
@@ -1,6 +1,6 @@
-mtime: 1781526322
-commit: 0e87880586cfa1e734d015a2262cf5c180261cadab5bb160d6158647acd4dae7
+mtime: 1784209660
+commit: 0b94164ede6b8ccc6d762fd653eb57f5dc8fa09d683fffa2647090ff189d313a
 url: https://src.opensuse.org/GNOME/libsoup
-revision: 0e87880586cfa1e734d015a2262cf5c180261cadab5bb160d6158647acd4dae7
+revision: 0b94164ede6b8ccc6d762fd653eb57f5dc8fa09d683fffa2647090ff189d313a
 projectscmsync: https://src.opensuse.org/GNOME/_ObsPrj
 

++++++ build.specials.obscpio ++++++

++++++ build.specials.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/.gitignore new/.gitignore
--- old/.gitignore      1970-01-01 01:00:00.000000000 +0100
+++ new/.gitignore      2026-07-16 15:47:40.000000000 +0200
@@ -0,0 +1,5 @@
+*.obscpio
+*.osc
+_build.*
+.pbuild
+osc-collab.*

++++++ fix-samsung-tv-playback.patch ++++++
>From 26c647ae5e3d8fcf137b9524bfbfca73cc7dedc8 Mon Sep 17 00:00:00 2001
From: Carlos Garcia Campos <[email protected]>
Date: Tue, 24 Feb 2026 11:20:18 +0100
Subject: [PATCH] Update the content length decimal value when encoding is set
 to SOUP_ENCODING_CONTENT_LENGTH

Closes #504
---
 libsoup/soup-message-headers.c |  40 +++++++++----
 tests/header-parsing-test.c    | 105 +++++++++++++++++++++++++++++++++
 2 files changed, 134 insertions(+), 11 deletions(-)

Index: libsoup-3.6.6/libsoup/soup-message-headers.c
===================================================================
--- libsoup-3.6.6.orig/libsoup/soup-message-headers.c
+++ libsoup-3.6.6/libsoup/soup-message-headers.c
@@ -220,6 +220,11 @@ soup_message_headers_clear (SoupMessageH
 
        if (hdrs->uncommon_concat)
                g_hash_table_remove_all (hdrs->uncommon_concat);
+
+        hdrs->encoding = -1;
+        hdrs->content_length = 0;
+        hdrs->expectations = 0;
+        g_clear_pointer (&hdrs->content_type, g_free);
 }
 
 /**
@@ -939,6 +944,27 @@ soup_message_headers_foreach (SoupMessag
 
 /* Specific headers */
 
+static gboolean
+soup_message_headers_update_content_length_encoding (SoupMessageHeaders *hdrs)
+{
+        const char *content_length;
+
+        content_length = soup_message_headers_get_one_common (hdrs, 
SOUP_HEADER_CONTENT_LENGTH);
+        if (content_length) {
+                char *end;
+
+                hdrs->content_length = g_ascii_strtoull (content_length, &end, 
10);
+                if (*end)
+                        hdrs->encoding = SOUP_ENCODING_UNRECOGNIZED;
+                else
+                        hdrs->encoding = SOUP_ENCODING_CONTENT_LENGTH;
+
+                return TRUE;
+        }
+
+        return FALSE;
+}
+
 /**
  * SoupEncoding:
  * @SOUP_ENCODING_UNRECOGNIZED: unknown / error
@@ -969,7 +995,6 @@ soup_message_headers_foreach (SoupMessag
 SoupEncoding
 soup_message_headers_get_encoding (SoupMessageHeaders *hdrs)
 {
-       const char *content_length;
         const char *transfer_encoding;
 
        g_return_val_if_fail (hdrs, SOUP_ENCODING_UNRECOGNIZED);
@@ -991,16 +1016,7 @@ soup_message_headers_get_encoding (SoupM
                 else if (g_ascii_strcasecmp (transfer_encoding, "identity") != 
0)
                         hdrs->encoding = SOUP_ENCODING_UNRECOGNIZED;
         } else {
-                content_length = soup_message_headers_get_one_common (hdrs, 
SOUP_HEADER_CONTENT_LENGTH);
-                if (content_length) {
-                        char *end;
-
-                        hdrs->content_length = g_ascii_strtoull 
(content_length, &end, 10);
-                        if (*end)
-                                hdrs->encoding = SOUP_ENCODING_UNRECOGNIZED;
-                        else
-                                hdrs->encoding = SOUP_ENCODING_CONTENT_LENGTH;
-                }
+                soup_message_headers_update_content_length_encoding (hdrs);
         }
 
         if (hdrs->encoding == -1) {
@@ -1046,6 +1062,8 @@ soup_message_headers_set_encoding (SoupM
 
        case SOUP_ENCODING_CONTENT_LENGTH:
                soup_message_headers_remove_common (hdrs, 
SOUP_HEADER_TRANSFER_ENCODING);
+                if (soup_message_headers_update_content_length_encoding (hdrs))
+                        return;
                break;
 
        case SOUP_ENCODING_CHUNKED:
Index: libsoup-3.6.6/tests/header-parsing-test.c
===================================================================
--- libsoup-3.6.6.orig/tests/header-parsing-test.c
+++ libsoup-3.6.6/tests/header-parsing-test.c
@@ -1522,6 +1522,110 @@ do_append_duplicate_content_length_test
         soup_message_headers_unref (hdrs);
 }
 
+static void
+do_content_length_test (void)
+{
+        SoupMessageHeaders *hdrs;
+
+        hdrs = soup_message_headers_new (SOUP_MESSAGE_HEADERS_REQUEST);
+
+        /* Add Content-Length using soup_message_headers_append() */
+        soup_message_headers_append (hdrs, "Content-Length", "42");
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "42");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
42);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Add Content-Length using soup_message_headers_set_content_length() 
*/
+        soup_message_headers_set_content_length (hdrs, 24);
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "24");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
24);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Set the encoding before the content length */
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_set_content_length (hdrs, 52);
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "52");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
52);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Set the encoding after the content length */
+        soup_message_headers_set_content_length (hdrs, 25);
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CONTENT_LENGTH);
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "25");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
25);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding before content length using 
soup_message_headers_append() */
+        soup_message_headers_append (hdrs, "Transfer-Encoding", "chunked");
+        soup_message_headers_append (hdrs, "Content-Length", "84");
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "84");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding before content length using 
soup_message_headers_append() and soup_message_headers_set_content_length() */
+        soup_message_headers_append (hdrs, "Transfer-Encoding", "chunked");
+        soup_message_headers_set_content_length (hdrs, 48);
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "48");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
48);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding before content length using 
soup_message_headers_set_encoding() and soup_message_headers_append() */
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CHUNKED);
+        soup_message_headers_append (hdrs, "Content-Length", "92");
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "92");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding before content length using 
soup_message_headers_set_encoding() and 
soup_message_headers_set_content_length() */
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CHUNKED);
+        soup_message_headers_set_content_length (hdrs, 29);
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "29");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
29);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CONTENT_LENGTH);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding after content length using 
soup_message_headers_append() */
+        soup_message_headers_append (hdrs, "Content-Length", "21");
+        soup_message_headers_append (hdrs, "Transfer-Encoding", "chunked");
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "21");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding after content length using 
soup_message_headers_set_content_length() and soup_message_headers_append() */
+        soup_message_headers_set_content_length (hdrs, 12);
+        soup_message_headers_append (hdrs, "Transfer-Encoding", "chunked");
+        g_assert_cmpstr (soup_message_headers_get_one (hdrs, 
"Content-Length"), ==, "12");
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding after content length using 
soup_message_headers_append() and soup_message_headers_set_encoding() */
+        soup_message_headers_append (hdrs, "Content-Length", "21");
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CHUNKED);
+        g_assert_null (soup_message_headers_get_one (hdrs, "Content-Length"));
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        /* Set different encoding after content length using 
soup_message_headers_set_content_length() and 
soup_message_headers_set_encoding() */
+        soup_message_headers_set_content_length (hdrs, 35);
+        soup_message_headers_set_encoding (hdrs, SOUP_ENCODING_CHUNKED);
+        g_assert_null (soup_message_headers_get_one (hdrs, "Content-Length"));
+        g_assert_cmpint (soup_message_headers_get_content_length (hdrs), ==, 
0);
+        g_assert_cmpuint (soup_message_headers_get_encoding (hdrs), ==, 
SOUP_ENCODING_CHUNKED);
+        soup_message_headers_clear (hdrs);
+
+        soup_message_headers_unref (hdrs);
+}
+
 int
 main (int argc, char **argv)
 {
@@ -1539,6 +1643,7 @@ main (int argc, char **argv)
        g_test_add_func ("/header-parsing/bad", do_bad_header_tests);
        g_test_add_func ("/header-parsing/append-duplicate-host", 
do_append_duplicate_host_test);
         g_test_add_func ("/header-parsing/append-duplicate-content-length", 
do_append_duplicate_content_length_test);
+        g_test_add_func ("/header-parsing/content-length", 
do_content_length_test);
 
        ret = g_test_run ();
 

++++++ libsoup-CVE-2025-32049.patch ++++++
--- /var/tmp/diff_new_pack.XSQZWP/_old  2026-07-20 09:59:51.001159803 +0200
+++ /var/tmp/diff_new_pack.XSQZWP/_new  2026-07-20 09:59:51.005159938 +0200
@@ -1,8 +1,8 @@
-diff --git a/libsoup/websocket/soup-websocket-connection.c 
b/libsoup/websocket/soup-websocket-connection.c
-index a1448134..48b08b60 100644
---- a/libsoup/websocket/soup-websocket-connection.c
-+++ b/libsoup/websocket/soup-websocket-connection.c
-@@ -971,6 +971,11 @@ process_contents (SoupWebsocketConnection *self,
+Index: libsoup-3.6.6/libsoup/websocket/soup-websocket-connection.c
+===================================================================
+--- libsoup-3.6.6.orig/libsoup/websocket/soup-websocket-connection.c
++++ libsoup-3.6.6/libsoup/websocket/soup-websocket-connection.c
+@@ -973,6 +973,11 @@ process_contents (SoupWebsocketConnectio
                switch (priv->message_opcode) {
                case 0x01:
                case 0x02:

++++++ libsoup-CVE-2026-0716.patch -> libsoup-CVE-2026-12478.patch ++++++
--- /work/SRC/openSUSE:Factory/libsoup/libsoup-CVE-2026-0716.patch      
2026-03-08 17:26:27.933772738 +0100
+++ /work/SRC/openSUSE:Factory/.libsoup.new.24530/libsoup-CVE-2026-12478.patch  
2026-07-20 09:59:50.117130054 +0200
@@ -12,11 +12,11 @@
  tests/websocket-test.c                        | 61 +++++++++++++++++--
  2 files changed, 62 insertions(+), 11 deletions(-)
 
-diff --git a/libsoup/websocket/soup-websocket-connection.c 
b/libsoup/websocket/soup-websocket-connection.c
-index 04837646..2f031f1d 100644
---- a/libsoup/websocket/soup-websocket-connection.c
-+++ b/libsoup/websocket/soup-websocket-connection.c
-@@ -1146,17 +1146,17 @@ process_frame (SoupWebsocketConnection *self)
+Index: libsoup-3.6.6/libsoup/websocket/soup-websocket-connection.c
+===================================================================
+--- libsoup-3.6.6.orig/libsoup/websocket/soup-websocket-connection.c
++++ libsoup-3.6.6/libsoup/websocket/soup-websocket-connection.c
+@@ -1125,17 +1125,17 @@ process_frame (SoupWebsocketConnection *
  
        payload = header + at;
  
@@ -40,11 +40,11 @@
                if (len < at + payload_len)
                        return FALSE; /* need more data */
  
-diff --git a/tests/websocket-test.c b/tests/websocket-test.c
-index 67b9e49d..d48a9694 100644
---- a/tests/websocket-test.c
-+++ b/tests/websocket-test.c
-@@ -2392,7 +2392,7 @@ test_fragment_assembly_corruption (Test *test, 
gconstpointer data)
+Index: libsoup-3.6.6/tests/websocket-test.c
+===================================================================
+--- libsoup-3.6.6.orig/tests/websocket-test.c
++++ libsoup-3.6.6/tests/websocket-test.c
+@@ -2181,7 +2181,7 @@ test_fragment_assembly_corruption (Test
  }
  
  static void
@@ -53,7 +53,7 @@
                      gconstpointer unused)
  {
        GError *error = NULL;
-@@ -2426,6 +2426,53 @@ test_cve_2026_0716 (Test *test,
+@@ -2215,6 +2215,53 @@ test_cve_2026_0716 (Test *test,
        g_assert_cmpuint (soup_websocket_connection_get_close_code 
(test->client), ==, SOUP_WEBSOCKET_CLOSE_BAD_DATA);
  }
  
@@ -107,7 +107,7 @@
  int
  main (int argc,
        char *argv[])
-@@ -2717,14 +2764,18 @@ main (int argc,
+@@ -2466,14 +2513,18 @@ main (int argc,
                      test_fragment_assembly_corruption,
                      teardown_direct_connection);
  
@@ -130,6 +130,3 @@
  
        ret = g_test_run ();
  
--- 
-GitLab
-

++++++ libsoup-CVE-2026-4271.patch ++++++
--- /var/tmp/diff_new_pack.XSQZWP/_old  2026-07-20 09:59:51.045161284 +0200
+++ /var/tmp/diff_new_pack.XSQZWP/_new  2026-07-20 09:59:51.049161419 +0200
@@ -11,10 +11,10 @@
  tests/http2-test.c                            |  54 ++++++++
  2 files changed, 141 insertions(+), 30 deletions(-)
 
-diff --git a/libsoup/server/http2/soup-server-message-io-http2.c 
b/libsoup/server/http2/soup-server-message-io-http2.c
-index 913afb46..6f8d1bb6 100644
---- a/libsoup/server/http2/soup-server-message-io-http2.c
-+++ b/libsoup/server/http2/soup-server-message-io-http2.c
+Index: libsoup-3.6.6/libsoup/server/http2/soup-server-message-io-http2.c
+===================================================================
+--- libsoup-3.6.6.orig/libsoup/server/http2/soup-server-message-io-http2.c
++++ libsoup-3.6.6/libsoup/server/http2/soup-server-message-io-http2.c
 @@ -69,6 +69,8 @@ typedef struct {
          GHashTable *messages;
  
@@ -24,7 +24,7 @@
  } SoupServerMessageIOHTTP2;
  
  static void soup_server_message_io_http2_send_response 
(SoupServerMessageIOHTTP2 *io,
-@@ -146,6 +148,8 @@ soup_server_message_io_http2_destroy (SoupServerMessageIO 
*iface)
+@@ -146,6 +148,8 @@ soup_server_message_io_http2_destroy (So
  {
          SoupServerMessageIOHTTP2 *io = (SoupServerMessageIOHTTP2 *)iface;
  
@@ -33,7 +33,7 @@
          if (io->read_source) {
                  g_source_destroy (io->read_source);
                  g_source_unref (io->read_source);
-@@ -160,10 +164,14 @@ soup_server_message_io_http2_destroy 
(SoupServerMessageIO *iface)
+@@ -160,10 +164,14 @@ soup_server_message_io_http2_destroy (So
          }
  
          g_clear_object (&io->iostream);
@@ -51,7 +51,7 @@
  }
  
  static void
-@@ -321,7 +329,33 @@ static const SoupServerMessageIOFuncs io_funcs = {
+@@ -321,7 +329,33 @@ static const SoupServerMessageIOFuncs io
          soup_server_message_io_http2_is_paused
  };
  
@@ -156,7 +156,7 @@
  
          return G_SOURCE_REMOVE;
  }
-@@ -390,13 +430,12 @@ static gboolean io_write_idle_cb 
(SoupServerMessageIOHTTP2* io);
+@@ -390,13 +430,12 @@ static gboolean io_write_idle_cb (SoupSe
  static void
  io_try_write (SoupServerMessageIOHTTP2 *io)
  {
@@ -171,7 +171,7 @@
                  if (!nghttp2_session_want_write (io->session))
                          return;
  
-@@ -416,12 +455,19 @@ io_try_write (SoupServerMessageIOHTTP2 *io)
+@@ -416,12 +455,19 @@ io_try_write (SoupServerMessageIOHTTP2 *
                  g_clear_pointer (&io->write_idle_source, g_source_unref);
          }
  
@@ -194,7 +194,7 @@
                  if (g_error_matches (error, G_IO_ERROR, 
G_IO_ERROR_WOULD_BLOCK)) {
                          g_clear_error (&error);
                          io->write_source = 
g_pollable_output_stream_create_source (G_POLLABLE_OUTPUT_STREAM (io->ostream), 
NULL);
-@@ -434,11 +480,11 @@ io_try_write (SoupServerMessageIOHTTP2 *io)
+@@ -434,11 +480,11 @@ io_try_write (SoupServerMessageIOHTTP2 *
                          h2_debug (io, NULL, "[SESSION] IO error: %s", 
error->message);
  
                  if (error || (!nghttp2_session_want_read (io->session) && 
!nghttp2_session_want_write (io->session)))
@@ -253,7 +253,7 @@
  
          return G_SOURCE_REMOVE;
  }
-@@ -931,5 +983,10 @@ soup_server_message_io_http2_new (SoupServerConnection  
*conn,
+@@ -931,5 +983,10 @@ soup_server_message_io_http2_new (SoupSe
          nghttp2_submit_settings (io->session, NGHTTP2_FLAG_NONE, settings, 
G_N_ELEMENTS (settings));
          io_try_write (io);
  
@@ -264,11 +264,11 @@
 +#endif
          return (SoupServerMessageIO *)io;
  }
-diff --git a/tests/http2-test.c b/tests/http2-test.c
-index 0846a0a6..d12b4bf7 100644
---- a/tests/http2-test.c
-+++ b/tests/http2-test.c
-@@ -1413,6 +1413,40 @@ do_broken_pseudo_header_test (Test *test, gconstpointer 
data)
+Index: libsoup-3.6.6/tests/http2-test.c
+===================================================================
+--- libsoup-3.6.6.orig/tests/http2-test.c
++++ libsoup-3.6.6/tests/http2-test.c
+@@ -1268,6 +1268,40 @@ do_broken_pseudo_header_test (Test *test
        g_uri_unref (uri);
  }
  
@@ -309,17 +309,14 @@
  static gboolean
  unpause_message (SoupServerMessage *msg)
  {
-@@ -1550,12 +1584,26 @@ server_handler (SoupServer        *server,
-                 shutdown (fd, SHUT_WR);
- #endif
- 
-+                soup_server_message_set_response (msg, "text/plain",
-+                                                  SOUP_MEMORY_STATIC,
-+                                                  "Success!", 8);
-+        } else if (strcmp (path, "/close-on-got-headers") == 0) {
+@@ -1399,9 +1433,23 @@ server_handler (SoupServer        *serve
                  soup_server_message_set_response (msg, "text/plain",
                                                    SOUP_MEMORY_STATIC,
                                                    "Success!", 8);
++        } else if (strcmp (path, "/close-on-got-headers") == 0) {
++                soup_server_message_set_response (msg, "text/plain",
++                                                  SOUP_MEMORY_STATIC,
++                                                  "Success!", 8);
          }
  }
  
@@ -336,7 +333,7 @@
  static gboolean
  server_basic_auth_callback (SoupAuthDomain    *auth_domain,
                              SoupServerMessage *msg,
-@@ -1582,6 +1630,8 @@ main (int argc, char **argv)
+@@ -1428,6 +1476,8 @@ main (int argc, char **argv)
                  return 0;
  
          server = soup_test_server_new (SOUP_TEST_SERVER_IN_THREAD | 
SOUP_TEST_SERVER_HTTP2);
@@ -345,7 +342,7 @@
          auth = soup_auth_domain_basic_new ("realm", "http2-test",
                                             "auth-callback", 
server_basic_auth_callback,
                                             NULL);
-@@ -1750,6 +1800,10 @@ main (int argc, char **argv)
+@@ -1584,6 +1634,10 @@ main (int argc, char **argv)
                      setup_session,
                      do_broken_pseudo_header_test,
                      teardown_session);
@@ -356,7 +353,4 @@
  
        ret = g_test_run ();
  
--- 
-2.53.0
-
 

Reply via email to