diff options
author | Robin Appelman <icewind@owncloud.com> | 2012-03-31 16:10:29 +0200 |
---|---|---|
committer | Robin Appelman <icewind@owncloud.com> | 2012-03-31 16:10:29 +0200 |
commit | ad495a92180da7e5dc369f7d8606a525dfe8a4e5 (patch) | |
tree | c0b66c90584fcf95e7f7f910304583009ff0a6dd /core/js/eventsource.js | |
parent | 71b70bb05f2c3a90a51d70c78c68332111400cf5 (diff) | |
download | nextcloud-server-ad495a92180da7e5dc369f7d8606a525dfe8a4e5.tar.gz nextcloud-server-ad495a92180da7e5dc369f7d8606a525dfe8a4e5.zip |
fix potential problem when using multiply eventsource's
Diffstat (limited to 'core/js/eventsource.js')
-rw-r--r-- | core/js/eventsource.js | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/core/js/eventsource.js b/core/js/eventsource.js index dece1a69d04..34bce60c24a 100644 --- a/core/js/eventsource.js +++ b/core/js/eventsource.js @@ -33,8 +33,12 @@ */ OC.EventSource=function(src,data){ var dataStr=''; - for(name in data){ - dataStr+=name+'='+encodeURIComponent(data[name])+'&'; + this.typelessListeners=[]; + this.listeners={}; + if(data){ + for(name in data){ + dataStr+=name+'='+encodeURIComponent(data[name])+'&'; + } } if(!this.useFallBack && typeof EventSource !='undefined'){ this.source=new EventSource(src+'?'+dataStr); @@ -42,7 +46,7 @@ OC.EventSource=function(src,data){ for(var i=0;i<this.typelessListeners.length;i++){ this.typelessListeners[i](JSON.parse(e.data)); } - } + }.bind(this); }else{ iframeId='oc_eventsource_iframe_'+OC.EventSource.iframeCount; OC.EventSource.fallBackSources[OC.EventSource.iframeCount]=this; |