From 9a72acc5b45c5abcccbdcddb7a709bffe6fbbd80 Mon Sep 17 00:00:00 2001 From: Phil Ringnalda Date: Thu, 29 Mar 2012 08:26:58 -0700 Subject: [PATCH] Back out 7bffc102114e (bug 737437) for Android native talos bustage --- gfx/layers/ipc/CompositorParent.cpp | 14 ++------------ gfx/layers/ipc/CompositorParent.h | 1 - gfx/layers/ipc/PCompositor.ipdl | 5 +---- widget/xpwidgets/nsBaseWidget.cpp | 2 -- 4 files changed, 3 insertions(+), 19 deletions(-) diff --git a/gfx/layers/ipc/CompositorParent.cpp b/gfx/layers/ipc/CompositorParent.cpp index 953103262c26..efcbdb8edfa4 100644 --- a/gfx/layers/ipc/CompositorParent.cpp +++ b/gfx/layers/ipc/CompositorParent.cpp @@ -78,24 +78,14 @@ CompositorParent::Destroy() NS_ABORT_IF_FALSE(ManagedPLayersParent().Length() == 0, "CompositorParent destroyed before managed PLayersParent"); - // Ensure that the layer manager is destructed on the compositor thread. + // Ensure that the layer manager is destroyed on the compositor thread. mLayerManager = NULL; } -bool -CompositorParent::RecvWillStop() -{ - mPaused = true; - - // Ensure that the layer manager is destroyed before CompositorChild. - mLayerManager->Destroy(); - - return true; -} - bool CompositorParent::RecvStop() { + mPaused = true; Destroy(); return true; } diff --git a/gfx/layers/ipc/CompositorParent.h b/gfx/layers/ipc/CompositorParent.h index ca5f0c0d4556..a72e7288114f 100644 --- a/gfx/layers/ipc/CompositorParent.h +++ b/gfx/layers/ipc/CompositorParent.h @@ -93,7 +93,6 @@ public: CompositorParent(nsIWidget* aWidget, base::Thread* aCompositorThread); virtual ~CompositorParent(); - virtual bool RecvWillStop() MOZ_OVERRIDE; virtual bool RecvStop() MOZ_OVERRIDE; virtual bool RecvPause() MOZ_OVERRIDE; virtual bool RecvResume() MOZ_OVERRIDE; diff --git a/gfx/layers/ipc/PCompositor.ipdl b/gfx/layers/ipc/PCompositor.ipdl index b016d97dd6eb..0c089b6e4beb 100644 --- a/gfx/layers/ipc/PCompositor.ipdl +++ b/gfx/layers/ipc/PCompositor.ipdl @@ -61,10 +61,7 @@ rpc protocol PCompositor parent: - // The child is about to be destroyed, so perform any necessary cleanup. - sync WillStop(); - - // Clean up in preparation for own destruction. + // Clean up in preparation for destruction. sync Stop(); // Pause/resume the compositor. These are intended to be used on mobile, when diff --git a/widget/xpwidgets/nsBaseWidget.cpp b/widget/xpwidgets/nsBaseWidget.cpp index 713f54afd627..94efe95846fa 100644 --- a/widget/xpwidgets/nsBaseWidget.cpp +++ b/widget/xpwidgets/nsBaseWidget.cpp @@ -153,8 +153,6 @@ nsBaseWidget::~nsBaseWidget() } if (mCompositorChild) { - mCompositorChild->SendWillStop(); - MessageLoop::current()->RunAllPending(); mCompositorChild->Destroy(); delete mCompositorThread; }