servicedispatcher: pause until killed.
Requires a signal to end servicedispatcher, including
closing the shell, manual interrupting with ctrl+c, etc.
Also update tests to reflect this.
Test: binderLibTest
Bug: 182914638
Change-Id: I826cddaee6dae9d569788dc1c31fa5fea1561653
diff --git a/libs/binder/servicedispatcher.cpp b/libs/binder/servicedispatcher.cpp
index a2fa842..35d69aa 100644
--- a/libs/binder/servicedispatcher.cpp
+++ b/libs/binder/servicedispatcher.cpp
@@ -82,7 +82,11 @@
LOG(INFO) << "Finish setting up RPC on service " << name << " on port" << port;
std::cout << port << std::endl;
- return EX_OK;
+
+ TEMP_FAILURE_RETRY(pause());
+
+ PLOG(FATAL) << "TEMP_FAILURE_RETRY(pause()) exits; this should not happen!";
+ __builtin_unreachable();
}
// Log to logd. For warning and more severe messages, also log to stderr.