From 64d6883a8173f4be5afe335af8d6f0090ada7f9f Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Mon, 17 Mar 2014 18:13:50 +0100 Subject: [PATCH] Ensure connect callback is invoked on premature socket hangup Closes #534 --- lib/client.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/client.js b/lib/client.js index 490e1d18..73f910a2 100644 --- a/lib/client.js +++ b/lib/client.js @@ -170,9 +170,17 @@ Client.prototype.connect = function(callback) { return self.emit('error', error); } callback(error); + callback = null; }); con.once('end', function() { + if ( callback ) { + // haven't received a connection message yet ! + var err = new Error("Stream unexpectedly ended before getting ready for query execution"); + callback(err); + callback = null; + return; + } if(self.activeQuery) { var disconnectError = new Error('Stream unexpectedly ended during query execution'); self.activeQuery.handleError(disconnectError);