Loading services/tuner/TunerFilter.cpp +11 −3 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,12 @@ using namespace std; TunerFilter::TunerFilter(shared_ptr<IFilter> filter, shared_ptr<FilterCallback> cb, TunerFilter::TunerFilter(shared_ptr<IFilter> filter, shared_ptr<FilterCallback> cb, DemuxFilterType type) DemuxFilterType type) : mFilter(filter), mType(type), mStarted(false), mShared(false), mFilterCallback(cb) {} : mFilter(filter), mType(type), mStarted(false), mShared(false), mClientPid(-1), mFilterCallback(cb) {} TunerFilter::~TunerFilter() { TunerFilter::~TunerFilter() { Mutex::Autolock _l(mLock); Mutex::Autolock _l(mLock); Loading Loading @@ -278,8 +283,10 @@ TunerFilter::~TunerFilter() { } } } } auto res = mFilter->stop(); mStarted = false; mStarted = false; return mFilter->stop(); return res; } } ::ndk::ScopedAStatus TunerFilter::flush() { ::ndk::ScopedAStatus TunerFilter::flush() { Loading Loading @@ -334,6 +341,7 @@ TunerFilter::~TunerFilter() { mFilter = nullptr; mFilter = nullptr; mStarted = false; mStarted = false; mShared = false; mShared = false; mClientPid = -1; return res; return res; } } Loading Loading @@ -398,7 +406,7 @@ TunerFilter::~TunerFilter() { } } bool TunerFilter::isSharedFilterAllowed(int callingPid) { bool TunerFilter::isSharedFilterAllowed(int callingPid) { return mClientPid != callingPid; return mShared && mClientPid != callingPid; } } void TunerFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { void TunerFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { Loading services/tuner/hidl/TunerHidlFilter.cpp +9 −3 Original line number Original line Diff line number Diff line Loading @@ -91,7 +91,12 @@ namespace tuner { TunerHidlFilter::TunerHidlFilter(sp<HidlIFilter> filter, sp<FilterCallback> cb, TunerHidlFilter::TunerHidlFilter(sp<HidlIFilter> filter, sp<FilterCallback> cb, DemuxFilterType type) DemuxFilterType type) : mFilter(filter), mType(type), mStarted(false), mShared(false), mFilterCallback(cb) { : mFilter(filter), mType(type), mStarted(false), mShared(false), mClientPid(-1), mFilterCallback(cb) { mFilter_1_1 = ::android::hardware::tv::tuner::V1_1::IFilter::castFrom(filter); mFilter_1_1 = ::android::hardware::tv::tuner::V1_1::IFilter::castFrom(filter); } } Loading Loading @@ -441,10 +446,10 @@ TunerHidlFilter::~TunerHidlFilter() { } } HidlResult res = mFilter->stop(); HidlResult res = mFilter->stop(); mStarted = false; if (res != HidlResult::SUCCESS) { if (res != HidlResult::SUCCESS) { return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); } } mStarted = false; return ::ndk::ScopedAStatus::ok(); return ::ndk::ScopedAStatus::ok(); } } Loading Loading @@ -507,6 +512,7 @@ TunerHidlFilter::~TunerHidlFilter() { mFilter_1_1 = nullptr; mFilter_1_1 = nullptr; mStarted = false; mStarted = false; mShared = false; mShared = false; mClientPid = -1; if (res != HidlResult::SUCCESS) { if (res != HidlResult::SUCCESS) { return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); Loading Loading @@ -575,7 +581,7 @@ TunerHidlFilter::~TunerHidlFilter() { } } bool TunerHidlFilter::isSharedFilterAllowed(int callingPid) { bool TunerHidlFilter::isSharedFilterAllowed(int callingPid) { return mClientPid != callingPid; return mShared && mClientPid != callingPid; } } void TunerHidlFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { void TunerHidlFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { Loading Loading
services/tuner/TunerFilter.cpp +11 −3 Original line number Original line Diff line number Diff line Loading @@ -38,7 +38,12 @@ using namespace std; TunerFilter::TunerFilter(shared_ptr<IFilter> filter, shared_ptr<FilterCallback> cb, TunerFilter::TunerFilter(shared_ptr<IFilter> filter, shared_ptr<FilterCallback> cb, DemuxFilterType type) DemuxFilterType type) : mFilter(filter), mType(type), mStarted(false), mShared(false), mFilterCallback(cb) {} : mFilter(filter), mType(type), mStarted(false), mShared(false), mClientPid(-1), mFilterCallback(cb) {} TunerFilter::~TunerFilter() { TunerFilter::~TunerFilter() { Mutex::Autolock _l(mLock); Mutex::Autolock _l(mLock); Loading Loading @@ -278,8 +283,10 @@ TunerFilter::~TunerFilter() { } } } } auto res = mFilter->stop(); mStarted = false; mStarted = false; return mFilter->stop(); return res; } } ::ndk::ScopedAStatus TunerFilter::flush() { ::ndk::ScopedAStatus TunerFilter::flush() { Loading Loading @@ -334,6 +341,7 @@ TunerFilter::~TunerFilter() { mFilter = nullptr; mFilter = nullptr; mStarted = false; mStarted = false; mShared = false; mShared = false; mClientPid = -1; return res; return res; } } Loading Loading @@ -398,7 +406,7 @@ TunerFilter::~TunerFilter() { } } bool TunerFilter::isSharedFilterAllowed(int callingPid) { bool TunerFilter::isSharedFilterAllowed(int callingPid) { return mClientPid != callingPid; return mShared && mClientPid != callingPid; } } void TunerFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { void TunerFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { Loading
services/tuner/hidl/TunerHidlFilter.cpp +9 −3 Original line number Original line Diff line number Diff line Loading @@ -91,7 +91,12 @@ namespace tuner { TunerHidlFilter::TunerHidlFilter(sp<HidlIFilter> filter, sp<FilterCallback> cb, TunerHidlFilter::TunerHidlFilter(sp<HidlIFilter> filter, sp<FilterCallback> cb, DemuxFilterType type) DemuxFilterType type) : mFilter(filter), mType(type), mStarted(false), mShared(false), mFilterCallback(cb) { : mFilter(filter), mType(type), mStarted(false), mShared(false), mClientPid(-1), mFilterCallback(cb) { mFilter_1_1 = ::android::hardware::tv::tuner::V1_1::IFilter::castFrom(filter); mFilter_1_1 = ::android::hardware::tv::tuner::V1_1::IFilter::castFrom(filter); } } Loading Loading @@ -441,10 +446,10 @@ TunerHidlFilter::~TunerHidlFilter() { } } HidlResult res = mFilter->stop(); HidlResult res = mFilter->stop(); mStarted = false; if (res != HidlResult::SUCCESS) { if (res != HidlResult::SUCCESS) { return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); } } mStarted = false; return ::ndk::ScopedAStatus::ok(); return ::ndk::ScopedAStatus::ok(); } } Loading Loading @@ -507,6 +512,7 @@ TunerHidlFilter::~TunerHidlFilter() { mFilter_1_1 = nullptr; mFilter_1_1 = nullptr; mStarted = false; mStarted = false; mShared = false; mShared = false; mClientPid = -1; if (res != HidlResult::SUCCESS) { if (res != HidlResult::SUCCESS) { return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); return ::ndk::ScopedAStatus::fromServiceSpecificError(static_cast<int32_t>(res)); Loading Loading @@ -575,7 +581,7 @@ TunerHidlFilter::~TunerHidlFilter() { } } bool TunerHidlFilter::isSharedFilterAllowed(int callingPid) { bool TunerHidlFilter::isSharedFilterAllowed(int callingPid) { return mClientPid != callingPid; return mShared && mClientPid != callingPid; } } void TunerHidlFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { void TunerHidlFilter::attachSharedFilterCallback(const shared_ptr<ITunerFilterCallback>& in_cb) { Loading