diff --git a/mozilla/content/xbl/src/nsBindingManager.cpp b/mozilla/content/xbl/src/nsBindingManager.cpp index 62d90bfb9b5..ea45107c646 100644 --- a/mozilla/content/xbl/src/nsBindingManager.cpp +++ b/mozilla/content/xbl/src/nsBindingManager.cpp @@ -283,9 +283,15 @@ SetOrRemoveObject(PLDHashTable& table, nsISupports* aKey, nsISupports* aValue) // Implement our nsISupports methods NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsBindingManager, nsIBindingManager) - tmp->mBindingTable.Clear(); - tmp->mDocumentTable.Clear(); - tmp->mLoadingDocTable.Clear(); + + if (tmp->mBindingTable.IsInitialized()) + tmp->mBindingTable.Clear(); + + if (tmp->mDocumentTable.IsInitialized()) + tmp->mDocumentTable.Clear(); + + if (tmp->mLoadingDocTable.IsInitialized()) + tmp->mLoadingDocTable.Clear(); if (tmp->mContentListTable.ops) PL_DHashTableFinish(&(tmp->mContentListTable));