aboutsummaryrefslogtreecommitdiff
path: root/lib/url.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2015-05-13 14:24:30 +0200
committerDaniel Stenberg <daniel@haxx.se>2015-05-18 09:33:47 +0200
commitd6f1c74330818325bd244e09150e43c997576ba7 (patch)
tree5f71fff8eef388edc88377bdd10df28c9c55c984 /lib/url.c
parent7d0df07e48aedc4f9a97dc1c6f73c5b69849a5a6 (diff)
pipeline: switch some code over to functions
... to "compartmentalize" a bit and make it easier to change behavior when multiplexing is used instead of good old pipelining.
Diffstat (limited to 'lib/url.c')
-rw-r--r--lib/url.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/lib/url.c b/lib/url.c
index a07aaa837..3425039de 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -2885,15 +2885,14 @@ void Curl_getoff_all_pipelines(struct SessionHandle *data,
struct connectdata *conn)
{
bool recv_head = (conn->readchannel_inuse &&
- (gethandleathead(conn->recv_pipe) == data)) ? TRUE : FALSE;
-
+ Curl_recvpipe_head(data, conn));
bool send_head = (conn->writechannel_inuse &&
- (gethandleathead(conn->send_pipe) == data)) ? TRUE : FALSE;
+ Curl_sendpipe_head(data, conn));
if(Curl_removeHandleFromPipeline(data, conn->recv_pipe) && recv_head)
- conn->readchannel_inuse = FALSE;
+ Curl_pipeline_leave_read(conn);
if(Curl_removeHandleFromPipeline(data, conn->send_pipe) && send_head)
- conn->writechannel_inuse = FALSE;
+ Curl_pipeline_leave_write(conn);
}
static void signalPipeClose(struct curl_llist *pipeline, bool pipe_broke)