Loading services/oboeservice/AAudioService.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -127,6 +127,7 @@ aaudio_handle_t AAudioService::openStream(const aaudio::AAudioStreamRequest &req ALOGD("AAudioService::openStream(): handle = 0x%08X", handle); serviceStream->setHandle(handle); pid_t pid = request.getProcessId(); serviceStream->setOwnerProcessId(pid); AAudioClientTracker::getInstance().registerClientStream(pid, serviceStream); } return handle; Loading @@ -140,7 +141,7 @@ aaudio_result_t AAudioService::closeStream(aaudio_handle_t streamHandle) { ALOGD("AAudioService.closeStream(0x%08X)", streamHandle); if (serviceStream != nullptr) { serviceStream->close(); pid_t pid = IPCThreadState::self()->getCallingPid(); pid_t pid = serviceStream->getOwnerProcessId(); AAudioClientTracker::getInstance().unregisterClientStream(pid, serviceStream); return AAUDIO_OK; } Loading services/oboeservice/AAudioServiceStreamBase.h +8 −0 Original line number Diff line number Diff line Loading @@ -126,6 +126,13 @@ public: mOwnerUserId = uid; } pid_t getOwnerProcessId() const { return mOwnerProcessId; } void setOwnerProcessId(pid_t pid) { mOwnerProcessId = pid; } aaudio_handle_t getHandle() const { return mHandle; } Loading Loading @@ -159,6 +166,7 @@ protected: int32_t mSampleRate = AAUDIO_UNSPECIFIED; int32_t mCapacityInFrames = AAUDIO_UNSPECIFIED; uid_t mOwnerUserId = -1; pid_t mOwnerProcessId = -1; private: aaudio_handle_t mHandle = -1; }; Loading Loading
services/oboeservice/AAudioService.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -127,6 +127,7 @@ aaudio_handle_t AAudioService::openStream(const aaudio::AAudioStreamRequest &req ALOGD("AAudioService::openStream(): handle = 0x%08X", handle); serviceStream->setHandle(handle); pid_t pid = request.getProcessId(); serviceStream->setOwnerProcessId(pid); AAudioClientTracker::getInstance().registerClientStream(pid, serviceStream); } return handle; Loading @@ -140,7 +141,7 @@ aaudio_result_t AAudioService::closeStream(aaudio_handle_t streamHandle) { ALOGD("AAudioService.closeStream(0x%08X)", streamHandle); if (serviceStream != nullptr) { serviceStream->close(); pid_t pid = IPCThreadState::self()->getCallingPid(); pid_t pid = serviceStream->getOwnerProcessId(); AAudioClientTracker::getInstance().unregisterClientStream(pid, serviceStream); return AAUDIO_OK; } Loading
services/oboeservice/AAudioServiceStreamBase.h +8 −0 Original line number Diff line number Diff line Loading @@ -126,6 +126,13 @@ public: mOwnerUserId = uid; } pid_t getOwnerProcessId() const { return mOwnerProcessId; } void setOwnerProcessId(pid_t pid) { mOwnerProcessId = pid; } aaudio_handle_t getHandle() const { return mHandle; } Loading Loading @@ -159,6 +166,7 @@ protected: int32_t mSampleRate = AAUDIO_UNSPECIFIED; int32_t mCapacityInFrames = AAUDIO_UNSPECIFIED; uid_t mOwnerUserId = -1; pid_t mOwnerProcessId = -1; private: aaudio_handle_t mHandle = -1; }; Loading