diff options
author | Fabien Sanglard <sanglardf@google.com> | 2017-01-18 16:43:18 -0800 |
---|---|---|
committer | gitbuildkicker <android-build@google.com> | 2017-02-22 15:10:41 -0800 |
commit | 198090d023171c12f0f256d0890aebd4710e6cc6 (patch) | |
tree | 700616cc66265fc9c114c29b9939847ee447f795 | |
parent | 079e79c4e949b4a718db7515eb872b95d341b345 (diff) | |
download | native-android-7.1.1_r32.tar.gz |
Fix security vulnerabilityandroid-7.1.1_r43android-7.1.1_r41android-7.1.1_r39android-7.1.1_r33android-7.1.1_r32android-7.1.1_r31
Change-Id: I4c9ea3a3177131fa29d2561da71ef18bec3af108
Test: angler, marlin
Bug: 32628763
(cherry picked from commit 45b202513ba7440beaefbf9928f73fb6683dcfbd)
-rw-r--r-- | services/surfaceflinger/SurfaceFlinger.cpp | 3 | ||||
-rw-r--r-- | services/surfaceflinger/SurfaceFlinger_hwc1.cpp | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/services/surfaceflinger/SurfaceFlinger.cpp b/services/surfaceflinger/SurfaceFlinger.cpp index 8db071ed2f..8e7e5772b6 100644 --- a/services/surfaceflinger/SurfaceFlinger.cpp +++ b/services/surfaceflinger/SurfaceFlinger.cpp @@ -2287,8 +2287,7 @@ void SurfaceFlinger::setTransactionState( if (s.client != NULL) { sp<IBinder> binder = IInterface::asBinder(s.client); if (binder != NULL) { - String16 desc(binder->getInterfaceDescriptor()); - if (desc == ISurfaceComposerClient::descriptor) { + if (binder->queryLocalInterface(ISurfaceComposerClient::descriptor) != NULL) { sp<Client> client( static_cast<Client *>(s.client.get()) ); transactionFlags |= setClientStateLocked(client, s.state); } diff --git a/services/surfaceflinger/SurfaceFlinger_hwc1.cpp b/services/surfaceflinger/SurfaceFlinger_hwc1.cpp index b0f418c4fe..b32f652e83 100644 --- a/services/surfaceflinger/SurfaceFlinger_hwc1.cpp +++ b/services/surfaceflinger/SurfaceFlinger_hwc1.cpp @@ -2203,8 +2203,7 @@ void SurfaceFlinger::setTransactionState( if (s.client != NULL) { sp<IBinder> binder = IInterface::asBinder(s.client); if (binder != NULL) { - String16 desc(binder->getInterfaceDescriptor()); - if (desc == ISurfaceComposerClient::descriptor) { + if (binder->queryLocalInterface(ISurfaceComposerClient::descriptor) != NULL) { sp<Client> client( static_cast<Client *>(s.client.get()) ); transactionFlags |= setClientStateLocked(client, s.state); } |