mirror of
https://github.com/electron/electron.git
synced 2026-02-06 05:05:16 -05:00
Fix race condition in event_subscriber.h
This commit is contained in:
@@ -73,6 +73,13 @@ class EventSubscriber : internal::EventSubscriberBase {
|
||||
content::BrowserThread::UI, FROM_HERE,
|
||||
base::Bind(
|
||||
[](EventSubscriber<HandlerType>* subscriber) {
|
||||
{
|
||||
// It is possible that this function will execute in the UI
|
||||
// thread before the outer function has returned and destroyed
|
||||
// its auto_lock. We need to acquire the lock before deleting
|
||||
// or risk a crash.
|
||||
base::AutoLock auto_lock(subscriber->handler_lock_);
|
||||
}
|
||||
delete subscriber;
|
||||
},
|
||||
ptr));
|
||||
|
||||
Reference in New Issue
Block a user