diff --git a/mozilla/xpfc/chrome/src/nsXPFCMenuContainer.cpp b/mozilla/xpfc/chrome/src/nsXPFCMenuContainer.cpp index 832b5aeb182..e7914911b54 100644 --- a/mozilla/xpfc/chrome/src/nsXPFCMenuContainer.cpp +++ b/mozilla/xpfc/chrome/src/nsXPFCMenuContainer.cpp @@ -51,11 +51,11 @@ nsXPFCMenuContainer::~nsXPFCMenuContainer() mChildMenus->CreateIterator(&iterator); iterator->Init(); - nsISupports * item; + nsIXPFCMenuItem * item; while(!(iterator->IsDone())) { - item = (nsISupports *) iterator->CurrentItem(); + item = (nsIXPFCMenuItem *) iterator->CurrentItem(); NS_RELEASE(item); iterator->Next(); } diff --git a/mozilla/xpfc/parser/src/nsMenuManager.cpp b/mozilla/xpfc/parser/src/nsMenuManager.cpp index 92e428f4aa3..7e16a9f6996 100644 --- a/mozilla/xpfc/parser/src/nsMenuManager.cpp +++ b/mozilla/xpfc/parser/src/nsMenuManager.cpp @@ -46,11 +46,11 @@ nsMenuManager :: ~nsMenuManager() mMenuContainers->CreateIterator(&iterator); iterator->Init(); - nsISupports * item; + nsIXPFCMenuContainer * item; while(!(iterator->IsDone())) { - item = (nsISupports *) iterator->CurrentItem(); + item = (nsIXPFCMenuContainer *) iterator->CurrentItem(); NS_RELEASE(item); iterator->Next(); } diff --git a/mozilla/xpfc/parser/src/nsXPFCXMLContentSink.cpp b/mozilla/xpfc/parser/src/nsXPFCXMLContentSink.cpp index 7571080e63d..0b5fe58ed35 100644 --- a/mozilla/xpfc/parser/src/nsXPFCXMLContentSink.cpp +++ b/mozilla/xpfc/parser/src/nsXPFCXMLContentSink.cpp @@ -546,6 +546,8 @@ NS_IMETHODIMP nsXPFCXMLContentSink::DidBuildModel(PRInt32 aQualityLevel) nsIIterator * iterator2 ; nsIXPFCMenuContainer * menu_container; nsString child; + nsIXPFCMenuItem * container_item = nsnull; + nsresult res = mOrphanMenuList->CreateIterator(&iterator2); @@ -559,8 +561,6 @@ NS_IMETHODIMP nsXPFCXMLContentSink::DidBuildModel(PRInt32 aQualityLevel) menu_container = (nsIXPFCMenuContainer *) iterator2->CurrentItem(); - nsIXPFCMenuItem * container_item = nsnull; - res = menu_container->QueryInterface(kCIXPFCMenuItemIID,(void**)&container_item); if (res == NS_OK) @@ -584,15 +584,18 @@ NS_IMETHODIMP nsXPFCXMLContentSink::DidBuildModel(PRInt32 aQualityLevel) } mOrphanMenuList->Remove(child); + NS_RELEASE(container_item); break; } NS_RELEASE(container_item); + } iterator2->Next(); } + NS_RELEASE(iterator2); iterator->Next();