SF: Iterate correctly over multiple displays when computing and caching bounds

Bug: 124308298

Test: go/wm-smoke
Test: atest EncodeVirtualDisplayWithCompositionTest
Change-Id: I6d5f1cbe29ba33be4407091cbdd17ec038b7301f
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index a999b27..85411b6 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -2329,7 +2329,7 @@
         for (const auto& layer : mDrawingState.layersSortedByZ) {
             // only consider the layers on the given layer stack
             if (!display->belongsInOutput(layer->getLayerStack(), layer->getPrimaryDisplayOnly())) {
-                return;
+                continue;
             }
 
             layer->computeBounds(displayDevice->getViewport().toFloatRect(), ui::Transform());