diff --git a/dom/plugins/ipc/PluginWidgetParent.cpp b/dom/plugins/ipc/PluginWidgetParent.cpp index 965cfa0b0e6c..658967111ff5 100644 --- a/dom/plugins/ipc/PluginWidgetParent.cpp +++ b/dom/plugins/ipc/PluginWidgetParent.cpp @@ -165,8 +165,7 @@ PluginWidgetParent::KillWidget() PWLOG("PluginWidgetParent::KillWidget() widget=%p\n", (void*)mWidget.get()); if (mWidget) { mWidget->UnregisterPluginWindowForRemoteUpdates(); - DebugOnly rv = mWidget->Destroy(); - NS_ASSERTION(NS_SUCCEEDED(rv), "widget destroy failure"); + mWidget->Destroy(); #if defined(MOZ_WIDGET_GTK) mWidget->SetNativeData(NS_NATIVE_PLUGIN_OBJECT_PTR, (uintptr_t)0); mWrapper = nullptr; diff --git a/widget/PluginWidgetProxy.cpp b/widget/PluginWidgetProxy.cpp index 53dbc32cffd7..609ecd7e0818 100644 --- a/widget/PluginWidgetProxy.cpp +++ b/widget/PluginWidgetProxy.cpp @@ -94,7 +94,7 @@ PluginWidgetProxy::GetParent(void) return mParent.get(); } -NS_IMETHODIMP +void PluginWidgetProxy::Destroy() { PWLOG("PluginWidgetProxy::Destroy()\n"); @@ -106,7 +106,7 @@ PluginWidgetProxy::Destroy() mActor = nullptr; } - return PuppetWidget::Destroy(); + PuppetWidget::Destroy(); } void diff --git a/widget/PluginWidgetProxy.h b/widget/PluginWidgetProxy.h index e313c48fda4c..3fb86a516280 100644 --- a/widget/PluginWidgetProxy.h +++ b/widget/PluginWidgetProxy.h @@ -40,7 +40,7 @@ public: const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData = nullptr) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD SetFocus(bool aRaise = false) override; NS_IMETHOD SetParent(nsIWidget* aNewParent) override; diff --git a/widget/PuppetWidget.cpp b/widget/PuppetWidget.cpp index 62f831da0194..6fc08e02c004 100644 --- a/widget/PuppetWidget.cpp +++ b/widget/PuppetWidget.cpp @@ -170,11 +170,11 @@ PuppetWidget::CreateChild(const LayoutDeviceIntRect& aRect, widget.forget() : nullptr); } -NS_IMETHODIMP +void PuppetWidget::Destroy() { if (mOnDestroyCalled) { - return NS_OK; + return; } mOnDestroyCalled = true; @@ -191,7 +191,6 @@ PuppetWidget::Destroy() } mLayerManager = nullptr; mTabChild = nullptr; - return NS_OK; } NS_IMETHODIMP diff --git a/widget/PuppetWidget.h b/widget/PuppetWidget.h index 0cc43b2899cb..267dad12fdd4 100644 --- a/widget/PuppetWidget.h +++ b/widget/PuppetWidget.h @@ -76,7 +76,7 @@ public: nsWidgetInitData* aInitData = nullptr, bool aForceUseIWidgetParent = false) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD Show(bool aState) override; diff --git a/widget/android/nsWindow.cpp b/widget/android/nsWindow.cpp index c1a9dc64915a..10c575c38076 100644 --- a/widget/android/nsWindow.cpp +++ b/widget/android/nsWindow.cpp @@ -1572,8 +1572,8 @@ nsWindow::Create(nsIWidget* aParent, return NS_OK; } -NS_IMETHODIMP -nsWindow::Destroy(void) +void +nsWindow::Destroy() { nsBaseWidget::mOnDestroyCalled = true; @@ -1603,8 +1603,6 @@ nsWindow::Destroy(void) #ifdef DEBUG_ANDROID_WIDGET DumpWindows(); #endif - - return NS_OK; } NS_IMETHODIMP diff --git a/widget/android/nsWindow.h b/widget/android/nsWindow.h index 97f7c19e4950..45b55079d598 100644 --- a/widget/android/nsWindow.h +++ b/widget/android/nsWindow.h @@ -133,7 +133,7 @@ public: nsNativeWidget aNativeParent, const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData) override; - NS_IMETHOD Destroy(void) override; + virtual void Destroy() override; NS_IMETHOD ConfigureChildren(const nsTArray&) override; NS_IMETHOD SetParent(nsIWidget* aNewParent) override; virtual nsIWidget *GetParent(void) override; diff --git a/widget/cocoa/nsChildView.h b/widget/cocoa/nsChildView.h index 57e9ebb35466..2fb763ce393d 100644 --- a/widget/cocoa/nsChildView.h +++ b/widget/cocoa/nsChildView.h @@ -303,7 +303,7 @@ public: nsWidgetInitData* aInitData = nullptr) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD Show(bool aState) override; virtual bool IsVisible() const override; diff --git a/widget/cocoa/nsChildView.mm b/widget/cocoa/nsChildView.mm index 2745fdd3a798..50528e91151f 100644 --- a/widget/cocoa/nsChildView.mm +++ b/widget/cocoa/nsChildView.mm @@ -557,16 +557,16 @@ nsChildView::GetXULWindowWidget() return nullptr; } -NS_IMETHODIMP nsChildView::Destroy() +void nsChildView::Destroy() { - NS_OBJC_BEGIN_TRY_ABORT_BLOCK_NSRESULT; + NS_OBJC_BEGIN_TRY_ABORT_BLOCK; // Make sure that no composition is in progress while disconnecting // ourselves from the view. MutexAutoLock lock(mViewTearDownLock); if (mOnDestroyCalled) - return NS_OK; + return; mOnDestroyCalled = true; // Stuff below may delete the last ref to this @@ -583,9 +583,7 @@ NS_IMETHODIMP nsChildView::Destroy() nsBaseWidget::OnDestroy(); - return NS_OK; - - NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT; + NS_OBJC_END_TRY_ABORT_BLOCK; } #pragma mark - diff --git a/widget/cocoa/nsCocoaWindow.h b/widget/cocoa/nsCocoaWindow.h index d3471049fcb9..bfc388cd8b50 100644 --- a/widget/cocoa/nsCocoaWindow.h +++ b/widget/cocoa/nsCocoaWindow.h @@ -235,7 +235,7 @@ public: nsWidgetInitData* aInitData = nullptr) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD Show(bool aState) override; virtual nsIWidget* GetSheetWindowParent(void) override; diff --git a/widget/cocoa/nsCocoaWindow.mm b/widget/cocoa/nsCocoaWindow.mm index 9e1a8072ecea..c0b8695190b1 100644 --- a/widget/cocoa/nsCocoaWindow.mm +++ b/widget/cocoa/nsCocoaWindow.mm @@ -526,10 +526,10 @@ nsCocoaWindow::CreatePopupContentView(const LayoutDeviceIntRect &aRect) NS_OBJC_END_TRY_ABORT_BLOCK_NSRESULT; } -NS_IMETHODIMP nsCocoaWindow::Destroy() +void nsCocoaWindow::Destroy() { if (mOnDestroyCalled) - return NS_OK; + return; mOnDestroyCalled = true; // SetFakeModal(true) is called for non-modal window opened by modal window. @@ -573,8 +573,6 @@ NS_IMETHODIMP nsCocoaWindow::Destroy() nsCocoaUtils::HideOSChromeOnScreen(false); } } - - return NS_OK; } nsIWidget* nsCocoaWindow::GetSheetWindowParent(void) diff --git a/widget/gonk/nsWindow.cpp b/widget/gonk/nsWindow.cpp index 13c0b74121e3..8ec57f0ee0e4 100644 --- a/widget/gonk/nsWindow.cpp +++ b/widget/gonk/nsWindow.cpp @@ -334,8 +334,8 @@ nsWindow::Create(nsIWidget* aParent, return NS_OK; } -NS_IMETHODIMP -nsWindow::Destroy(void) +void +nsWindow::Destroy() { mOnDestroyCalled = true; mScreen->UnregisterWindow(this); @@ -343,7 +343,6 @@ nsWindow::Destroy(void) gFocusedWindow = nullptr; } nsBaseWidget::OnDestroy(); - return NS_OK; } NS_IMETHODIMP diff --git a/widget/gonk/nsWindow.h b/widget/gonk/nsWindow.h index 9a79cb89ef98..387adcc07849 100644 --- a/widget/gonk/nsWindow.h +++ b/widget/gonk/nsWindow.h @@ -52,7 +52,7 @@ public: void* aNativeParent, const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData) override; - NS_IMETHOD Destroy(void); + virtual void Destroy(); NS_IMETHOD Show(bool aState); virtual bool IsVisible() const; diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp index 8569f0b9e1b0..04b526a05900 100644 --- a/widget/gtk/nsWindow.cpp +++ b/widget/gtk/nsWindow.cpp @@ -703,11 +703,11 @@ nsWindow::DestroyChildWindows() } } -NS_IMETHODIMP -nsWindow::Destroy(void) +void +nsWindow::Destroy() { if (mIsDestroyed || !mCreated) - return NS_OK; + return; LOG(("nsWindow::Destroy [%p]\n", (void *)this)); mIsDestroyed = true; @@ -804,8 +804,6 @@ nsWindow::Destroy(void) // Save until last because OnDestroy() may cause us to be deleted. OnDestroy(); - - return NS_OK; } nsIWidget * diff --git a/widget/gtk/nsWindow.h b/widget/gtk/nsWindow.h index 1b49764f430d..26c836a01810 100644 --- a/widget/gtk/nsWindow.h +++ b/widget/gtk/nsWindow.h @@ -97,7 +97,7 @@ public: nsNativeWidget aNativeParent, const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData) override; - NS_IMETHOD Destroy(void) override; + virtual void Destroy() override; virtual nsIWidget *GetParent() override; virtual float GetDPI() override; virtual double GetDefaultScaleInternal() override; diff --git a/widget/nsBaseWidget.cpp b/widget/nsBaseWidget.cpp index 2735634df6c9..a6b6aaf40d88 100644 --- a/widget/nsBaseWidget.cpp +++ b/widget/nsBaseWidget.cpp @@ -512,7 +512,7 @@ void nsBaseWidget::SetAttachedWidgetListener(nsIWidgetListener* aListener) // Close this nsBaseWidget // //------------------------------------------------------------------------- -NS_IMETHODIMP nsBaseWidget::Destroy() +void nsBaseWidget::Destroy() { // Just in case our parent is the only ref to us nsCOMPtr kungFuDeathGrip(this); @@ -526,8 +526,6 @@ NS_IMETHODIMP nsBaseWidget::Destroy() // Allow our scroll capture container to be cleaned up, if we have one. mScrollCaptureContainer = nullptr; #endif - - return NS_OK; } diff --git a/widget/nsBaseWidget.h b/widget/nsBaseWidget.h index 1f60183f67ee..4f2f2c781e4b 100644 --- a/widget/nsBaseWidget.h +++ b/widget/nsBaseWidget.h @@ -143,7 +143,7 @@ public: NS_IMETHOD CaptureMouse(bool aCapture) override; virtual nsIWidgetListener* GetWidgetListener() override; virtual void SetWidgetListener(nsIWidgetListener* alistener) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD SetParent(nsIWidget* aNewParent) override; virtual nsIWidget* GetParent(void) override; virtual nsIWidget* GetTopLevelWidget() override; diff --git a/widget/nsIWidget.h b/widget/nsIWidget.h index 6d4bad45190c..791c20ceb6ca 100644 --- a/widget/nsIWidget.h +++ b/widget/nsIWidget.h @@ -507,7 +507,7 @@ class nsIWidget : public nsISupports * This method does not delete the widget. */ - NS_IMETHOD Destroy(void) = 0; + virtual void Destroy() = 0; /** * Destroyed() returns true if Destroy() has been called already. diff --git a/widget/uikit/nsWindow.h b/widget/uikit/nsWindow.h index df57dad43406..ec27a4999962 100644 --- a/widget/uikit/nsWindow.h +++ b/widget/uikit/nsWindow.h @@ -34,7 +34,7 @@ public: const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData = nullptr) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD Show(bool aState) override; NS_IMETHOD Enable(bool aState) override { return NS_OK; diff --git a/widget/uikit/nsWindow.mm b/widget/uikit/nsWindow.mm index cd4493a7a4ae..a2163910ca1f 100644 --- a/widget/uikit/nsWindow.mm +++ b/widget/uikit/nsWindow.mm @@ -528,8 +528,8 @@ nsWindow::Create(nsIWidget* aParent, return NS_OK; } -NS_IMETHODIMP -nsWindow::Destroy(void) +void +nsWindow::Destroy() { for (uint32_t i = 0; i < mChildren.Length(); ++i) { // why do we still have children? diff --git a/widget/windows/nsWindow.cpp b/widget/windows/nsWindow.cpp index 918bab8c99f2..b8f8ee3dc1f2 100644 --- a/widget/windows/nsWindow.cpp +++ b/widget/windows/nsWindow.cpp @@ -737,17 +737,17 @@ nsWindow::Create(nsIWidget* aParent, } // Close this nsWindow -NS_IMETHODIMP nsWindow::Destroy() +void nsWindow::Destroy() { // WM_DESTROY has already fired, avoid calling it twice if (mOnDestroyCalled) - return NS_OK; + return; // Don't destroy windows that have file pickers open, we'll tear these down // later once the picker is closed. mDestroyCalled = true; if (mPickerDisplayCount) - return NS_OK; + return; // During the destruction of all of our children, make sure we don't get deleted. nsCOMPtr kungFuDeathGrip(this); @@ -781,8 +781,6 @@ NS_IMETHODIMP nsWindow::Destroy() mWindowHook.Notify(mWnd, WM_DESTROY, 0, 0, msgResult); OnDestroy(); } - - return NS_OK; } /************************************************************** diff --git a/widget/windows/nsWindow.h b/widget/windows/nsWindow.h index fdc1b7fdb3e7..8970b10c83f4 100644 --- a/widget/windows/nsWindow.h +++ b/widget/windows/nsWindow.h @@ -103,7 +103,7 @@ public: const LayoutDeviceIntRect& aRect, nsWidgetInitData* aInitData = nullptr) override; - NS_IMETHOD Destroy() override; + virtual void Destroy() override; NS_IMETHOD SetParent(nsIWidget *aNewParent) override; virtual nsIWidget* GetParent(void) override; virtual float GetDPI() override;