npapi-vlc | branch: master | Hugo Beauzée-Luyssen <[email protected]> | Tue Jan 26 15:55:06 2016 +0100| [f06f820e5f2fafd17dcebcd5432ec26f6d7dd93f] | committer: Hugo Beauzée-Luyssen
npapi: vlcplugin_base: Don't acquire/release NPObjects from vlc's threads Fix #16292 > https://code.videolan.org/videolan/npapi-vlc/commit/f06f820e5f2fafd17dcebcd5432ec26f6d7dd93f --- npapi/vlcplugin_base.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/npapi/vlcplugin_base.cpp b/npapi/vlcplugin_base.cpp index 6e5bd9f..fb8aa73 100644 --- a/npapi/vlcplugin_base.cpp +++ b/npapi/vlcplugin_base.cpp @@ -279,22 +279,22 @@ bool VlcPluginBase::handle_event(void *) struct AsyncEventWrapper { - AsyncEventWrapper(NPP b, npapi::Variant&& l, npapi::VariantArray&& a) + AsyncEventWrapper(NPP b, NPObject* l, npapi::VariantArray&& a) : browser( b ) - , listener( std::move( l ) ) + , listener( l ) , args( std::move( a ) ) { } NPP browser; - npapi::Variant listener; + NPObject* listener; npapi::VariantArray args; }; template <typename... Args> -static void invokeEvent( NPP browser, npapi::Variant listener, Args&&... args ) +static void invokeEvent( NPP browser, NPObject* listener, Args&&... args ) { - auto wrapper = new AsyncEventWrapper( browser, std::move( listener ), npapi::wrap( std::forward<Args>( args )... ) ); + auto wrapper = new AsyncEventWrapper( browser, listener, npapi::wrap( std::forward<Args>( args )... ) ); NPN_PluginThreadAsyncCall( browser, [](void* data) { auto w = reinterpret_cast<AsyncEventWrapper*>( data ); NPVariant result; _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
