diff --git a/lib/client/client-handshake.c b/lib/client/client-handshake.c
index 18b23ddcd8a0f946b3e80b4e490420eb5973a2bd..c1bfb54ac48768703defecc4edfa252c827bd0cf 100644
--- a/lib/client/client-handshake.c
+++ b/lib/client/client-handshake.c
@@ -474,7 +474,8 @@ create_new_conn:
 #endif
 
 send_hs:
-	if (!lws_dll_is_null(&wsi->dll_client_transaction_queue)) {
+	if (wsi_piggy &&
+	    !lws_dll_is_null(&wsi->dll_client_transaction_queue)) {
 		/*
 		 * We are pipelining on an already-established connection...
 		 * we can skip tls establishment.