diff options
author | Kartik Mahajan <kartik.mahajan@pubmatic.com> | 2018-01-18 22:28:59 +0530 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2018-01-18 22:28:12 +0100 |
commit | a5e6d6ebcb8dc00f264c89c3e5376f042c372efb (patch) | |
tree | ae1d42ab05cf091b6029c26877be77390664b41f /lib | |
parent | 87ddeee59b605bbc5ee7164105ad9aa413a4433e (diff) | |
download | curl-a5e6d6ebcb8dc00f264c89c3e5376f042c372efb.tar.gz |
http2: don't close connection when single transfer is stopped
Fixes #2237
Closes #2249
Diffstat (limited to 'lib')
-rw-r--r-- | lib/multi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/multi.c b/lib/multi.c index e35b8fa19..43823cc93 100644 --- a/lib/multi.c +++ b/lib/multi.c @@ -581,7 +581,8 @@ static CURLcode multi_done(struct connectdata **connp, && !(conn->ntlm.state == NTLMSTATE_TYPE2 || conn->proxyntlm.state == NTLMSTATE_TYPE2) #endif - ) || conn->bits.close || premature) { + ) || conn->bits.close + || (premature && !(conn->handler->flags & PROTOPT_STREAM))) { CURLcode res2 = Curl_disconnect(conn, premature); /* close connection */ /* If we had an error already, make sure we return that one. But |