OSDN Git Service

Fix security vulnerability am: 45b202513b
authorFabien Sanglard <sanglardf@google.com>
Thu, 2 Feb 2017 20:15:42 +0000 (20:15 +0000)
committerandroid-build-merger <android-build-merger@google.com>
Thu, 2 Feb 2017 20:15:42 +0000 (20:15 +0000)
am: 8778a131c2

Change-Id: Ic9300f2597702d6e83d80222dbc5ca7d2642f621

1  2 
services/surfaceflinger/SurfaceFlinger_hwc1.cpp

@@@ -467,7 -467,7 +467,7 @@@ void SurfaceFlinger::init() 
  
      // set SFEventThread to SCHED_FIFO to minimize jitter
      struct sched_param param = {0};
 -    param.sched_priority = 1;
 +    param.sched_priority = 2;
      if (sched_setscheduler(mSFEventThread->getTid(), SCHED_FIFO, &param) != 0) {
          ALOGE("Couldn't set SCHED_FIFO for SFEventThread");
      }
@@@ -2203,8 -2203,7 +2203,7 @@@ void SurfaceFlinger::setTransactionStat
          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);
                  }