diff --git a/lib/server/pipe.js b/lib/server/pipe.js index 0e7a4c06..e86e65ba 100644 --- a/lib/server/pipe.js +++ b/lib/server/pipe.js @@ -63,7 +63,7 @@ end: !p.notEnd }); - read.once('end', func); + on('end', read, func); }, function(callback) { on('open', write, callback); }); @@ -72,9 +72,9 @@ function on(event, emitter, callback) { var listeners = emitter.listeners(event), - length = listeners.length; + indexOf = listeners.indexOf(callback); - if (length <= 1) + if (!~indexOf) emitter.once(event, callback); }