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

Commit b689cae8 authored by Anthony Stange's avatar Anthony Stange Committed by Automerger Merge Worker
Browse files

Merge changes I52185f74,I509cceb4,I0e255c64 into udc-dev am: 32a7414e

parents 8a31bfaa 32a7414e
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -92,6 +92,16 @@ SensorManager& SensorManager::getInstanceForPackage(const String16& packageName)
    return *sensorManager;
}

void SensorManager::removeInstanceForPackage(const String16& packageName) {
    Mutex::Autolock _l(sLock);
    auto iterator = sPackageInstances.find(packageName);
    if (iterator != sPackageInstances.end()) {
        SensorManager* sensorManager = iterator->second;
        delete sensorManager;
        sPackageInstances.erase(iterator);
    }
}

SensorManager::SensorManager(const String16& opPackageName)
    : mSensorList(nullptr), mOpPackageName(opPackageName), mDirectConnectionHandle(1) {
    Mutex::Autolock _l(mLock);
+1 −0
Original line number Diff line number Diff line
@@ -54,6 +54,7 @@ class SensorManager : public ASensorManager
{
public:
    static SensorManager& getInstanceForPackage(const String16& packageName);
    static void removeInstanceForPackage(const String16& packageName);
    ~SensorManager();

    ssize_t getSensorList(Sensor const* const** list);
+3 −0
Original line number Diff line number Diff line
@@ -59,6 +59,9 @@ SensorManagerAidl::~SensorManagerAidl() {
    if (mPollThread.joinable()) {
        mPollThread.join();
    }

    ::android::SensorManager::removeInstanceForPackage(
            String16(ISensorManager::descriptor));
}

ndk::ScopedAStatus createDirectChannel(::android::SensorManager& manager, size_t size, int type,
+3 −0
Original line number Diff line number Diff line
@@ -60,6 +60,9 @@ SensorManager::~SensorManager() {
    if (mPollThread.joinable()) {
        mPollThread.join();
    }

    ::android::SensorManager::removeInstanceForPackage(
            String16(ISensorManager::descriptor));
}

// Methods from ::android::frameworks::sensorservice::V1_0::ISensorManager follow.