Skip to content

Commit

Permalink
IsPipeliningPossible: http2 can always "pipeline" (multiplex)
Browse files Browse the repository at this point in the history
  • Loading branch information
bagder committed May 18, 2015
1 parent ee3ad23 commit e91aedd
Showing 1 changed file with 12 additions and 5 deletions.
17 changes: 12 additions & 5 deletions lib/url.c
Expand Up @@ -2813,13 +2813,20 @@ static bool SocketIsDead(curl_socket_t sock)
static bool IsPipeliningPossible(const struct SessionHandle *handle,
const struct connectdata *conn)
{
/* If a HTTP protocol and pipelining is enabled */
if((conn->handler->protocol & PROTO_FAMILY_HTTP) &&
Curl_multi_pipeline_enabled(handle->multi) &&
(handle->set.httpreq == HTTPREQ_GET ||
handle->set.httpreq == HTTPREQ_HEAD) &&
handle->set.httpversion != CURL_HTTP_VERSION_1_0)
return TRUE;
Curl_multi_pipeline_enabled(handle->multi)) {

if((handle->set.httpversion != CURL_HTTP_VERSION_1_0) &&
(handle->set.httpreq == HTTPREQ_GET ||
handle->set.httpreq == HTTPREQ_HEAD))
/* didn't ask for HTTP/1.0 and a GET or HEAD */
return TRUE;

if(conn->httpversion == 20)
/* talking HTTP/2 */
return TRUE;
}
return FALSE;
}

Expand Down

0 comments on commit e91aedd

Please sign in to comment.