diff options
author | Chia-I Wu <olv@google.com> | 2017-08-07 15:27:49 -0700 |
---|---|---|
committer | Chia-I Wu <olv@google.com> | 2017-08-07 15:33:55 -0700 |
commit | fc0b9110901cd9814a83c574fdaf5c4428838424 (patch) | |
tree | 51d7deb2233103db979a2bdd1036f62f6773a89d | |
parent | 8f09b6abecbd8bf0e00c72b5eab6dd743e0f35ac (diff) | |
download | native-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.cpp | 2 |
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; } |