diff --git a/automotive/remoteaccess/test_grpc_server/impl/src/TestWakeupClientServiceImpl.cpp b/automotive/remoteaccess/test_grpc_server/impl/src/TestWakeupClientServiceImpl.cpp index 5d33fcb632..515dc98ceb 100644 --- a/automotive/remoteaccess/test_grpc_server/impl/src/TestWakeupClientServiceImpl.cpp +++ b/automotive/remoteaccess/test_grpc_server/impl/src/TestWakeupClientServiceImpl.cpp @@ -169,7 +169,8 @@ void ServiceImpl::loop() { Looper::setForThread(mLooper); while (true) { - mLooper->pollAll(/*timeoutMillis=*/-1); + // Don't use pollAll since it might swallow wake. + mLooper->pollOnce(/*timeoutMillis=*/-1); if (mServerStopped) { return; } diff --git a/automotive/remoteaccess/test_grpc_server/impl/test/TestWakeupClientServiceImplUnitTest.cpp b/automotive/remoteaccess/test_grpc_server/impl/test/TestWakeupClientServiceImplUnitTest.cpp index dd08e325cb..a7927f5b1c 100644 --- a/automotive/remoteaccess/test_grpc_server/impl/test/TestWakeupClientServiceImplUnitTest.cpp +++ b/automotive/remoteaccess/test_grpc_server/impl/test/TestWakeupClientServiceImplUnitTest.cpp @@ -53,6 +53,9 @@ class TestWakeupClientServiceImplUnitTest : public ::testing::Test { public: virtual void SetUp() override { int selectedPort = 0; + mServerStarted = false; + mService.reset(); + mServer.reset(); mServerThread = std::thread([this, &selectedPort] { mService = std::make_unique(); ServerBuilder builder;