Bug 1337548 - Only send DidComposite to affected tabs. r=dvander, a=gchang
authorMatt Woodrow <mwoodrow@mozilla.com>
Mon, 27 Feb 2017 15:52:30 +1300
changeset 378994 e2752c5516c107c4c8a3edf7be91b2fd15c56a3b
parent 378993 05659f9e9b7b94bde3af270f2f301f4edea4d62e
child 378995 d84066a52ff00eb7ff10c6822178c1e22ff84ee1
push id1419
push userjlund@mozilla.com
push dateMon, 10 Apr 2017 20:44:07 +0000
treeherdermozilla-release@5e6801b73ef6 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersdvander, gchang
bugs1337548
milestone53.0
Bug 1337548 - Only send DidComposite to affected tabs. r=dvander, a=gchang
gfx/layers/ipc/CompositorBridgeParent.cpp
--- a/gfx/layers/ipc/CompositorBridgeParent.cpp
+++ b/gfx/layers/ipc/CompositorBridgeParent.cpp
@@ -1734,17 +1734,17 @@ CompositorBridgeParent::DidComposite(Tim
     mLayerManager->ExtractImageCompositeNotifications(&notifications);
     if (!notifications.IsEmpty()) {
       Unused << ImageBridgeParent::NotifyImageComposites(notifications);
     }
   }
 
   MonitorAutoLock lock(*sIndirectLayerTreesLock);
   ForEachIndirectLayerTree([&] (LayerTreeState* lts, const uint64_t& aLayersId) -> void {
-    if (lts->mCrossProcessParent) {
+    if (lts->mCrossProcessParent && lts->mParent == this) {
       CrossProcessCompositorBridgeParent* cpcp = lts->mCrossProcessParent;
       cpcp->DidComposite(aLayersId, aCompositeStart, aCompositeEnd);
     }
   });
 }
 
 void
 CompositorBridgeParent::InvalidateRemoteLayers()