gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnurl] 139/222: http2: move state-init from creation to pre-transfer


From: gnunet
Subject: [gnurl] 139/222: http2: move state-init from creation to pre-transfer
Date: Thu, 07 Nov 2019 00:10:35 +0100

This is an automated email from the git hooks/post-receive script.

ng0 pushed a commit to branch master
in repository gnurl.

commit 8a00560de2804fa8ab639c6e895ed3a7f1e75efc
Author: Daniel Stenberg <address@hidden>
AuthorDate: Mon Sep 30 09:30:58 2019 +0200

    http2: move state-init from creation to pre-transfer
    
    To make sure that the HTTP/2 state is initialized correctly for
    duplicated handles. It would otherwise easily generate "spurious"
    PRIORITY frames to get sent over HTTP/2 connections when duplicated easy
    handles were used.
    
    Reported-by: Daniel Silverstone
    Fixes #4303
    Closes #4442
---
 lib/http2.c    | 1 +
 lib/transfer.c | 1 +
 lib/url.c      | 2 --
 3 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/http2.c b/lib/http2.c
index d2f5da17a..b5b831b56 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -1537,6 +1537,7 @@ static int h2_session_send(struct Curl_easy *data,
 
     H2BUGF(infof(data, "Queuing PRIORITY on stream %u (easy %p)\n",
                  stream->stream_id, data));
+    DEBUGASSERT(stream->stream_id != -1);
     rv = nghttp2_submit_priority(h2, NGHTTP2_FLAG_NONE, stream->stream_id,
                                  &pri_spec);
     if(rv)
diff --git a/lib/transfer.c b/lib/transfer.c
index 421c8d2d0..d0d4aeb50 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -1510,6 +1510,7 @@ CURLcode Curl_pretransfer(struct Curl_easy *data)
       }
     }
 #endif
+    Curl_http2_init_state(&data->state);
   }
 
   return result;
diff --git a/lib/url.c b/lib/url.c
index 031f8f0c4..8538d24dd 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -619,8 +619,6 @@ CURLcode Curl_open(struct Curl_easy **curl)
 
       data->progress.flags |= PGRS_HIDE;
       data->state.current_speed = -1; /* init to negative == impossible */
-
-      Curl_http2_init_state(&data->state);
     }
   }
 

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]