Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9f8c811f authored by Peng Xu's avatar Peng Xu Committed by Android (Google) Code Review
Browse files

Merge "No more ashmem equivalent checker false alarm"

parents 25e42cff 36407736
Loading
Loading
Loading
Loading
+6 −9
Original line number Diff line number Diff line
@@ -18,8 +18,6 @@
#include "SensorDirectConnection.h"
#include <hardware/sensors.h>

#include <sys/stat.h>

#define UNUSED(x) (void)(x)

namespace android {
@@ -182,13 +180,12 @@ bool SensorService::SensorDirectConnection::isEquivalent(const sensors_direct_me
    if (mMem.type == mem->type) {
        switch (mMem.type) {
            case SENSOR_DIRECT_MEM_TYPE_ASHMEM: {
                struct stat s1, s2;
                int fd1, fd2;
                fd1 = mMem.handle->data[0];
                fd2 = mem->handle->data[0];
                if (fstat(fd1, &s1) < 0 || fstat(fd2, &s2) < 0 || s1.st_ino == s2.st_ino) {
                    ret = true;
                }
                // there is no known method to test if two ashmem fds are equivalent besides
                // trivially comparing the fd values (ino number from fstat() are always the
                // same, pointing to "/dev/ashmem").
                int fd1 = mMem.handle->data[0];
                int fd2 = mem->handle->data[0];
                ret = (fd1 == fd2);
                break;
            }
            case SENSOR_DIRECT_MEM_TYPE_GRALLOC: