summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChia-I Wu <olv@google.com>2017-08-07 15:27:49 -0700
committerChia-I Wu <olv@google.com>2017-08-07 15:33:55 -0700
commitfc0b9110901cd9814a83c574fdaf5c4428838424 (patch)
tree51d7deb2233103db979a2bdd1036f62f6773a89d
parent8f09b6abecbd8bf0e00c72b5eab6dd743e0f35ac (diff)
downloadnative-fc0b9110901cd9814a83c574fdaf5c4428838424.tar.gz
libsurfaceflinger: fix screenshot permission check
Fix the logic for layers we check isSecure or isVisible for. It was regressed by my previous change to support WINDOW_TYPE_DONT_SCREENSHOT. Bug: 63311708 Bug: 62656774 Test: CTS Change-Id: I7768cb590014cc610ec564847958bbd98742c277
-rw-r--r--services/surfaceflinger/SurfaceFlinger.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp
index 0f6c581e14..a57e8cf3e4 100644
--- a/services/surfaceflinger/SurfaceFlinger.cpp
+++ b/services/surfaceflinger/SurfaceFlinger.cpp
@@ -4392,7 +4392,7 @@ status_t SurfaceFlinger::captureScreenImplLocked(const sp<const DisplayDevice>&
bool secureLayerIsVisible = false;
for (const auto& layer : mDrawingState.layersSortedByZ) {
const Layer::State& state(layer->getDrawingState());
- if (layer->belongsToDisplay(hw->getLayerStack(), false) ||
+ if (!layer->belongsToDisplay(hw->getLayerStack(), false) ||
(state.z < minLayerZ || state.z > maxLayerZ)) {
continue;
}