mirror of
https://github.com/SpartanJ/eepp.git
synced 2026-09-22 13:01:05 +03:00
Fix user-after-free during plugin reload.
This commit is contained in:
@@ -313,8 +313,12 @@ void PluginManager::subscribeFileSystemListener() {
|
||||
|
||||
mFileSystemListenerCb =
|
||||
mFileSystemListener->addListener( [this]( const FileEvent& ev, const FileInfo& file ) {
|
||||
Lock l( mPluginsFSSubsMutex );
|
||||
for ( Plugin* plugin : mPluginsFSSubs )
|
||||
UnorderedSet<Plugin*> plugins;
|
||||
{
|
||||
Lock l( mPluginsFSSubsMutex );
|
||||
plugins = mPluginsFSSubs;
|
||||
}
|
||||
for ( Plugin* plugin : plugins )
|
||||
plugin->onFileSystemEvent( ev, file );
|
||||
} );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user