зеркало из https://github.com/mozilla/gecko-dev.git
Bug 333109 r=darin. Try to fix crash in OnItemRemoved. This is a workaround
for bug 333016 that prevents attaching multiple observers.
This commit is contained in:
Родитель
ad498da0ef
Коммит
9af4b359c5
|
@ -3269,6 +3269,10 @@ nsNavHistoryResult::AddEverythingObserver(nsNavHistoryQueryResultNode* aNode)
|
||||||
history->AddObserver(this, PR_TRUE);
|
history->AddObserver(this, PR_TRUE);
|
||||||
mIsHistoryObserver = PR_TRUE;
|
mIsHistoryObserver = PR_TRUE;
|
||||||
}
|
}
|
||||||
|
if (mEverythingObservers.IndexOf(aNode) != mEverythingObservers.NoIndex) {
|
||||||
|
NS_NOTREACHED("Attempting to register an observer twice!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
mEverythingObservers.AppendElement(aNode);
|
mEverythingObservers.AppendElement(aNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3291,6 +3295,10 @@ nsNavHistoryResult::AddBookmarkObserver(nsNavHistoryFolderResultNode* aNode,
|
||||||
mIsBookmarksObserver = PR_TRUE;
|
mIsBookmarksObserver = PR_TRUE;
|
||||||
}
|
}
|
||||||
FolderObserverList* list = BookmarkObserversForId(aFolder, PR_TRUE);
|
FolderObserverList* list = BookmarkObserversForId(aFolder, PR_TRUE);
|
||||||
|
if (list->IndexOf(aNode) != list->NoIndex) {
|
||||||
|
NS_NOTREACHED("Attempting to register an observer twice!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
list->AppendElement(aNode);
|
list->AppendElement(aNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче