aboutsummaryrefslogtreecommitdiff
path: root/lib/url.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/url.c')
-rw-r--r--lib/url.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/url.c b/lib/url.c
index a7f1a0c1a..6391edb28 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -2511,9 +2511,10 @@ ConnectionExists(struct SessionHandle *data,
}
if(match) {
- if(pipeLen == 0) {
- /* The check for a dead socket makes sense only if there
- are no handles in pipeline */
+ if(!pipeLen && !check->inuse) {
+ /* The check for a dead socket makes sense only if there are no
+ handles in pipeline and the connection isn't already marked in
+ use */
bool dead = SocketIsDead(check->sock[FIRSTSOCKET]);
if(dead) {
check->data = data;