Skip to content

Commit e8d3cb8

Browse files
committed
Added error listener to listener object. Closes hapijs#2561.
1 parent 93292ce commit e8d3cb8

File tree

2 files changed

+19
-0
lines changed

2 files changed

+19
-0
lines changed

lib/connection.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,11 @@ internals.Connection.prototype._start = function (callback) {
149149
return process.nextTick(callback);
150150
}
151151

152+
this.listener.once('error', function (err) {
153+
154+
return callback(err);
155+
});
156+
152157
if (this.type !== 'tcp') {
153158
this.listener.listen(this.settings.port, callback);
154159
}

test/connection.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -399,6 +399,20 @@ describe('Connection', function () {
399399
});
400400
});
401401
});
402+
403+
it('will return an error if the port is aleady in use', function (done) {
404+
405+
var server = new Hapi.Server();
406+
server.connection({ port: 9000 });
407+
server.connection({ port: 9000 });
408+
409+
server.start(function (err) {
410+
411+
expect(err).to.exist();
412+
expect(err.message).to.equal('listen EADDRINUSE');
413+
done();
414+
});
415+
});
402416
});
403417

404418
describe('_stop()', function () {

0 commit comments

Comments
 (0)