Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Update lib/nssocket.js
  • Loading branch information
inindev committed Feb 26, 2013
1 parent d0c605d commit f4955f5
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions lib/nssocket.js
Expand Up @@ -191,16 +191,18 @@ NsSocket.prototype.reconnect = function reconnect() {
return self.emit('error', new Error('Did not reconnect after maximum retries: ' + self.retry.max));
}

self.retry.waiting = true;

// here for debugging reasons
assert.isFalse(self.connected, 'before actually reconnect connected must be false');
assert.isUndefined(self.socket, 'before actually reconnect socket must be destroied');

self.once('start', function () {
self.retry.waiting = false;
self.retry.retries = 0;
});
if (!self.retry.waiting) {
self.retry.waiting = true;

self.once('start', function () {
self.retry.waiting = false;
self.retry.retries = 0;
});
}

self.connect.apply(self, self.connectionArgs);
}, this.retry.wait);
Expand Down Expand Up @@ -281,6 +283,10 @@ function configureEvents(self) {
self.retry && self.reconnect();
});

self.stream.on('error', function (err) {
!self.retry && self.emit('error', err || new Error('An Unknown Error occured'));
});

self.socket.on('error', function (err) {
!self.retry && self.emit('error', err || new Error('An Unknown Error occured'));
});
Expand All @@ -289,4 +295,4 @@ function configureEvents(self) {
self.emit('idle');
self.timeout && self.socket.setTimeout(this.timeout);
});
}
}

0 comments on commit f4955f5

Please sign in to comment.