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

Commit 8a2710d9 authored by Peng Xu's avatar Peng Xu
Browse files

Adding package name for HIDL connection and default package name

This helps debugging native connection and hidl connections.

Test: dumpsys sensorservice display information as expected.
Bug: 62446956
Change-Id: I1cb1ecd3a7398ccf4fddfb36cc5946826f48027b
Merged-In: I1cb1ecd3a7398ccf4fddfb36cc5946826f48027b
parent c24e2085
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -933,8 +933,14 @@ sp<ISensorEventConnection> SensorService::createSensorEventConnection(const Stri
    }

    uid_t uid = IPCThreadState::self()->getCallingUid();
    sp<SensorEventConnection> result(new SensorEventConnection(this, uid, packageName,
            requestedMode == DATA_INJECTION, opPackageName));
    pid_t pid = IPCThreadState::self()->getCallingPid();

    String8 connPackageName =
            (packageName == "") ? String8::format("unknown_package_pid_%d", pid) : packageName;
    String16 connOpPackageName =
            (opPackageName == String16("")) ? String16(connPackageName) : opPackageName;
    sp<SensorEventConnection> result(new SensorEventConnection(this, uid, connPackageName,
            requestedMode == DATA_INJECTION, connOpPackageName));
    if (requestedMode == DATA_INJECTION) {
        if (mActiveConnections.indexOf(result) < 0) {
            mActiveConnections.add(result);
+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ cc_library_shared {
        "libbase",
        "libhidlbase",
        "libhidltransport",
        "libhwbinder",
        "libutils",
        "libsensor",
        "android.frameworks.sensorservice@1.0",
+6 −1
Original line number Diff line number Diff line
@@ -29,6 +29,9 @@
#include "DirectReportChannel.h"
#include "utils.h"

#include <hwbinder/IPCThreadState.h>
#include <utils/String8.h>

namespace android {
namespace frameworks {
namespace sensorservice {
@@ -212,7 +215,9 @@ Return<void> SensorManager::createEventQueue(
        return Void();
    }

    sp<::android::SensorEventQueue> internalQueue = getInternalManager().createEventQueue();
    String8 package(String8::format("hidl_client_pid_%d",
                                    android::hardware::IPCThreadState::self()->getCallingPid()));
    sp<::android::SensorEventQueue> internalQueue = getInternalManager().createEventQueue(package);
    if (internalQueue == nullptr) {
        LOG(WARNING) << "::android::SensorManager::createEventQueue returns nullptr.";
        _hidl_cb(nullptr, Result::UNKNOWN_ERROR);