diff --git a/mozilla/embedding/components/commandhandler/src/nsCommandManager.cpp b/mozilla/embedding/components/commandhandler/src/nsCommandManager.cpp index ef0efacd1be..8d2da9fed59 100644 --- a/mozilla/embedding/components/commandhandler/src/nsCommandManager.cpp +++ b/mozilla/embedding/components/commandhandler/src/nsCommandManager.cpp @@ -174,7 +174,8 @@ nsCommandManager::RemoveCommandObserver(nsIObserver *aCommandObserver, const cha if (!commandObservers) return NS_ERROR_UNEXPECTED; - nsresult removed = commandObservers->RemoveElement(aCommandObserver); + nsCOMPtr observerAsSupports = do_QueryInterface(aCommandObserver); + nsresult removed = commandObservers->RemoveElement(observerAsSupports); return (removed) ? NS_OK : NS_ERROR_FAILURE; }