diff options
author | Daniel Stenberg <daniel@haxx.se> | 2020-01-05 10:34:19 +0100 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2020-01-13 15:44:58 +0100 |
commit | 960753287368e4dee768dd480de90dc07c62a380 (patch) | |
tree | a344eb7b3d33583ef1429bc9a2cb6b8514d2d688 /lib/http2.c | |
parent | 4431ed2484f0e66096642ee76a2bbeedec5bde79 (diff) | |
download | curl-960753287368e4dee768dd480de90dc07c62a380.tar.gz |
ConnectionExists: respect the max_concurrent_streams limits
A regression made the code use 'multiplexed' as a boolean instead of the
counter it is intended to be. This made curl try to "over-populate"
connections with new streams.
This regression came with 41fcdf71a1, shipped in curl 7.65.0.
Also, respect the CURLMOPT_MAX_CONCURRENT_STREAMS value in the same
check.
Reported-by: Kunal Ekawde
Fixes #4779
Closes #4784
Diffstat (limited to 'lib/http2.c')
-rw-r--r-- | lib/http2.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/http2.c b/lib/http2.c index 65f3513ee..690a537bf 100644 --- a/lib/http2.c +++ b/lib/http2.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al. * * This software is licensed as described in the file COPYING, which * you should have received as part of this distribution. The terms @@ -1158,7 +1158,7 @@ static void populate_settings(struct connectdata *conn, nghttp2_settings_entry *iv = httpc->local_settings; iv[0].settings_id = NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS; - iv[0].value = (uint32_t)Curl_multi_max_concurrent_streams(conn->data->multi); + iv[0].value = Curl_multi_max_concurrent_streams(conn->data->multi); iv[1].settings_id = NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE; iv[1].value = HTTP2_HUGE_WINDOW_SIZE; |