[vlc-devel] [PATCH 3/3] npapi: allow a Event Listener to subscribe to more than one event type
Sergey Radionov
rsatom at gmail.com
Sat Dec 24 08:31:17 CET 2011
---
npapi/vlcplugin_base.cpp | 19 +++++++++----------
1 files changed, 9 insertions(+), 10 deletions(-)
diff --git a/npapi/vlcplugin_base.cpp b/npapi/vlcplugin_base.cpp
index d4ed630..fbdff1f 100644
--- a/npapi/vlcplugin_base.cpp
+++ b/npapi/vlcplugin_base.cpp
@@ -279,18 +279,17 @@ bool EventObj::insert(const NPString &name, NPObject *listener, bool bubble)
if( !event )
return false;
- lr_l::iterator iter;
- for( iter = _llist.begin(); iter != _llist.end(); ++iter )
- if( iter->listener() == listener && iter->bubble() == bubble )
- break;
-
- if( iter == _llist.end() )
- {
- _llist.push_back(Listener(event, listener, bubble));
- return true;
+ for(lr_l::iterator iter = _llist.begin(); iter != _llist.end(); ++iter ){
+ if(iter->listener() == listener &&
+ event->libvlc_type == iter->event_type() &&
+ iter->bubble() == bubble)
+ {
+ return false;
+ }
}
- return false;
+ _llist.push_back(Listener(event, listener, bubble));
+ return true;
}
bool EventObj::remove(const NPString &name, NPObject *listener, bool bubble)
--
1.7.7.1.msysgit.0
More information about the vlc-devel
mailing list