зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1299956 - Better use of kungFuDeathGrip in EventListenerManager, r=smaug
This commit is contained in:
Родитель
7080f0c942
Коммит
cd55795e9f
|
@ -655,6 +655,8 @@ EventListenerManager::RemoveEventListenerInternal(
|
|||
uint32_t typeCount = 0;
|
||||
bool deviceType = IsDeviceType(aEventMessage);
|
||||
|
||||
RefPtr<EventListenerManager> kungFuDeathGrip(this);
|
||||
|
||||
for (uint32_t i = 0; i < count; ++i) {
|
||||
listener = &mListeners.ElementAt(i);
|
||||
if (EVENT_TYPE_EQUALS(listener, aEventMessage, aUserType, aTypeString,
|
||||
|
@ -662,7 +664,6 @@ EventListenerManager::RemoveEventListenerInternal(
|
|||
++typeCount;
|
||||
if (listener->mListener == aListenerHolder &&
|
||||
listener->mFlags.EqualsForRemoval(aFlags)) {
|
||||
RefPtr<EventListenerManager> kungFuDeathGrip(this);
|
||||
mListeners.RemoveElementAt(i);
|
||||
--count;
|
||||
NotifyEventListenerRemoved(aUserType);
|
||||
|
|
Загрузка…
Ссылка в новой задаче