Loading libs/binder/ndk/include_cpp/android/binder_auto_utils.h +1 −1 Original line number Diff line number Diff line Loading @@ -349,7 +349,7 @@ class ScopedAIBinder_Weak /** * See AIBinder_Weak_promote. */ SpAIBinder promote() { return SpAIBinder(AIBinder_Weak_promote(get())); } SpAIBinder promote() const { return SpAIBinder(AIBinder_Weak_promote(get())); } }; namespace internal { Loading libs/binder/ndk/tests/libbinder_ndk_unit_test.cpp +20 −0 Original line number Diff line number Diff line Loading @@ -670,6 +670,26 @@ TEST(NdkBinder, ConvertToPlatformParcel) { EXPECT_EQ(42, pparcel->readInt32()); } TEST(NdkBinder, GetAndVerifyScopedAIBinder_Weak) { for (const ndk::SpAIBinder& binder : {// remote ndk::SpAIBinder(AServiceManager_getService(kBinderNdkUnitTestService)), // local ndk::SharedRefBase::make<MyBinderNdkUnitTest>()->asBinder()}) { // get a const ScopedAIBinder_Weak and verify promote EXPECT_NE(binder.get(), nullptr); const ndk::ScopedAIBinder_Weak wkAIBinder = ndk::ScopedAIBinder_Weak(AIBinder_Weak_new(binder.get())); EXPECT_EQ(wkAIBinder.promote().get(), binder.get()); // get another ScopedAIBinder_Weak and verify ndk::ScopedAIBinder_Weak wkAIBinder2 = ndk::ScopedAIBinder_Weak(AIBinder_Weak_new(binder.get())); EXPECT_FALSE(AIBinder_Weak_lt(wkAIBinder.get(), wkAIBinder2.get())); EXPECT_FALSE(AIBinder_Weak_lt(wkAIBinder2.get(), wkAIBinder.get())); EXPECT_EQ(wkAIBinder2.promote(), wkAIBinder.promote()); } } class MyResultReceiver : public BnResultReceiver { public: Mutex mMutex; Loading Loading
libs/binder/ndk/include_cpp/android/binder_auto_utils.h +1 −1 Original line number Diff line number Diff line Loading @@ -349,7 +349,7 @@ class ScopedAIBinder_Weak /** * See AIBinder_Weak_promote. */ SpAIBinder promote() { return SpAIBinder(AIBinder_Weak_promote(get())); } SpAIBinder promote() const { return SpAIBinder(AIBinder_Weak_promote(get())); } }; namespace internal { Loading
libs/binder/ndk/tests/libbinder_ndk_unit_test.cpp +20 −0 Original line number Diff line number Diff line Loading @@ -670,6 +670,26 @@ TEST(NdkBinder, ConvertToPlatformParcel) { EXPECT_EQ(42, pparcel->readInt32()); } TEST(NdkBinder, GetAndVerifyScopedAIBinder_Weak) { for (const ndk::SpAIBinder& binder : {// remote ndk::SpAIBinder(AServiceManager_getService(kBinderNdkUnitTestService)), // local ndk::SharedRefBase::make<MyBinderNdkUnitTest>()->asBinder()}) { // get a const ScopedAIBinder_Weak and verify promote EXPECT_NE(binder.get(), nullptr); const ndk::ScopedAIBinder_Weak wkAIBinder = ndk::ScopedAIBinder_Weak(AIBinder_Weak_new(binder.get())); EXPECT_EQ(wkAIBinder.promote().get(), binder.get()); // get another ScopedAIBinder_Weak and verify ndk::ScopedAIBinder_Weak wkAIBinder2 = ndk::ScopedAIBinder_Weak(AIBinder_Weak_new(binder.get())); EXPECT_FALSE(AIBinder_Weak_lt(wkAIBinder.get(), wkAIBinder2.get())); EXPECT_FALSE(AIBinder_Weak_lt(wkAIBinder2.get(), wkAIBinder.get())); EXPECT_EQ(wkAIBinder2.promote(), wkAIBinder.promote()); } } class MyResultReceiver : public BnResultReceiver { public: Mutex mMutex; Loading