diff options
Diffstat (limited to 'libs/binder/IServiceManager.cpp')
-rw-r--r-- | libs/binder/IServiceManager.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/binder/IServiceManager.cpp b/libs/binder/IServiceManager.cpp index bac8b6604b..5ca9156fb2 100644 --- a/libs/binder/IServiceManager.cpp +++ b/libs/binder/IServiceManager.cpp @@ -271,6 +271,8 @@ sp<IBinder> ServiceManagerShim::waitForService(const String16& name16) std::unique_lock<std::mutex> lock(mMutex); mBinder = binder; lock.unlock(); + // Flushing here helps ensure the service's ref count remains accurate + IPCThreadState::self()->flushCommands(); mCv.notify_one(); return Status::ok(); } |