diff --git a/lib/cloudfunc.js b/lib/cloudfunc.js index c6bff040..5974aa35 100644 --- a/lib/cloudfunc.js +++ b/lib/cloudfunc.js @@ -83,20 +83,20 @@ var Util; }; this.removeListener = function(name, func, allListeners, socket) { - var i, n, listeners; + var listeners; if (socket) socket.removeListener(name, func); listeners = allListeners[name]; - if (listeners) { - n = listeners.length; - - for (i = 0; i < n; i++) - if (listeners[i] === func) - listeners[i] = null; - } + if (listeners) + listeners = listeners.map(function(listener) { + if (listener === func) + listener = null; + + return listener; + }); }; /**