Github messages for voidlinux
 help / color / mirror / Atom feed
* [PR PATCH] Add patch to remove limit on number of HTTP/2 streams (upstream) [ci skip]
@ 2022-07-27  4:46 z411
  2022-07-27  4:59 ` classabbyamp
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: z411 @ 2022-07-27  4:46 UTC (permalink / raw)
  To: ml

[-- Attachment #1: Type: text/plain, Size: 1126 bytes --]

There is a new pull request by z411 against master on the void-packages repository

https://github.com/z411/void-packages qt-fix
https://github.com/void-linux/void-packages/pull/38292

Add patch to remove limit on number of HTTP/2 streams (upstream) [ci skip]
#### Testing the changes
- I tested the changes in this PR: **YES**

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
#### Local build testing
- I built this PR locally for my native architecture, x86_64
- I built this PR locally for these architectures:
  - x86

This fixes an issue, particularly in the qt5-network package that doesn't let KDE install any themes. This patch was issued upstream: https://code.qt.io/cgit/qt/qtbase.git/commit/?id=46940ca73791e87e

Fixes #38276 

A patch file from https://github.com/void-linux/void-packages/pull/38292.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-qt-fix-38292.patch --]
[-- Type: text/x-diff, Size: 2925 bytes --]

From f9ed0bf4fc6c91ba2c35d0c60a302f2a280f4b2f Mon Sep 17 00:00:00 2001
From: z411 <z411@omaera.org>
Date: Wed, 27 Jul 2022 00:36:00 -0400
Subject: [PATCH] Add patch to remove limit on number of HTTP/2 streams
 (upstream)

---
 srcpkgs/qt5/patches/0005-streams-fix.patch | 43 ++++++++++++++++++++++
 1 file changed, 43 insertions(+)
 create mode 100644 srcpkgs/qt5/patches/0005-streams-fix.patch

diff --git a/srcpkgs/qt5/patches/0005-streams-fix.patch b/srcpkgs/qt5/patches/0005-streams-fix.patch
new file mode 100644
index 000000000000..5326b3e28cc9
--- /dev/null
+++ b/srcpkgs/qt5/patches/0005-streams-fix.patch
@@ -0,0 +1,43 @@
+diff --git a/qtbase/src/network/access/http2/http2protocol_p.h b/qtbase/src/network/access/http2/http2protocol_p.h
+index b0af5aa91921bf5229e2d54284687bafb1969eb1..ed5f2bf561f2bd62c6ef7fd1fde29e867d374603 100644
+--- a/qtbase/src/network/access/http2/http2protocol_p.h
++++ b/qtbase/src/network/access/http2/http2protocol_p.h
+@@ -133,9 +133,6 @@ enum Http2PredefinedParameters
+     maxPayloadSize = (1 << 24) - 1, // HTTP/2 6.5.2
+ 
+     defaultSessionWindowSize = 65535, // HTTP/2 6.5.2
+-    // Using 1000 (rather arbitrarily), just to
+-    // impose *some* upper limit:
+-    maxPeerConcurrentStreams  = 1000,
+     maxConcurrentStreams = 100 // HTTP/2, 6.5.2
+ };
+ 
+diff --git a/qtbase/src/network/access/qhttp2protocolhandler.cpp b/qtbase/src/network/access/qhttp2protocolhandler.cpp
+index f513139304bba375ea3c345c74f2c889b5a13938..21f1c91e29513acff83c45b6717cd5aa25609d62 100644
+--- a/qtbase/src/network/access/qhttp2protocolhandler.cpp
++++ b/qtbase/src/network/access/qhttp2protocolhandler.cpp
+@@ -393,7 +393,8 @@ bool QHttp2ProtocolHandler::sendRequest()
+         initReplyFromPushPromise(message, key);
+     }
+ 
+-    const auto streamsToUse = std::min<quint32>(maxConcurrentStreams - activeStreams.size(),
++    const auto streamsToUse = std::min<quint32>(maxConcurrentStreams > activeStreams.size()
++                                                ? maxConcurrentStreams - activeStreams.size() : 0,
+                                                 requests.size());
+     auto it = requests.begin();
+     for (quint32 i = 0; i < streamsToUse; ++i) {
+@@ -1084,13 +1085,8 @@ bool QHttp2ProtocolHandler::acceptSetting(Http2::Settings identifier, quint32 ne
+         QMetaObject::invokeMethod(this, "resumeSuspendedStreams", Qt::QueuedConnection);
+     }
+ 
+-    if (identifier == Settings::MAX_CONCURRENT_STREAMS_ID) {
+-        if (newValue > maxPeerConcurrentStreams) {
+-            connectionError(PROTOCOL_ERROR, "SETTINGS invalid number of concurrent streams");
+-            return false;
+-        }
++    if (identifier == Settings::MAX_CONCURRENT_STREAMS_ID)
+         maxConcurrentStreams = newValue;
+-    }
+ 
+     if (identifier == Settings::MAX_FRAME_SIZE_ID) {
+         if (newValue < Http2::minPayloadLimit || newValue > Http2::maxPayloadSize) {

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2022-07-29 11:23 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-27  4:46 [PR PATCH] Add patch to remove limit on number of HTTP/2 streams (upstream) [ci skip] z411
2022-07-27  4:59 ` classabbyamp
2022-07-27  4:59 ` classabbyamp
2022-07-27  5:07 ` z411
2022-07-27  5:10 ` classabbyamp
2022-07-27  5:13 ` [PR PATCH] [Updated] " z411
2022-07-27  5:13 ` qt5: " z411
2022-07-27 19:25 ` classabbyamp
2022-07-27 19:26 ` classabbyamp
2022-07-27 21:42 ` [PR PATCH] [Updated] " z411
2022-07-28  2:59 ` z411
2022-07-29 11:23 ` [PR PATCH] [Closed]: " Johnnynator

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).