Browse Source

Support removeEventListener inside event handler

Support the following (and similar) use-case:

```javascript
var object = new THREE.Object3D()
var doOnce = function() {
// do something
object.removeEventListener("foo",doOnce);
}
object.addEventListener("foo", doOnce);
```
Gheric Speiginer 12 years ago
parent
commit
50a5f569bd
1 changed files with 1 additions and 0 deletions
  1. 1 0
      src/core/EventDispatcher.js

+ 1 - 0
src/core/EventDispatcher.js

@@ -77,6 +77,7 @@ THREE.EventDispatcher.prototype = {
 
 		if ( listenerArray !== undefined ) {
 
+			listenerArray = listenerArray.slice();
 			event.target = this;
 
 			for ( var i = 0, l = listenerArray.length; i < l; i ++ ) {