aboutsummaryrefslogtreecommitdiff
path: root/service.cpp
diff options
context:
space:
mode:
authorsurmeh01 <surabhi.mehta@arm.com>2018-05-17 14:11:25 +0100
committertelsoa01 <telmo.soares@arm.com>2018-05-23 16:23:49 +0100
commit49b9e100bfbb3b8da01472a0ff48b2bd92944e01 (patch)
tree1a998fa12f665ff0a15b299d8bae5590e0aed884 /service.cpp
parent28adb40e1bb1d3f3a06a7f333f7f2a4f42d3ed4b (diff)
downloadandroid-nn-driver-49b9e100bfbb3b8da01472a0ff48b2bd92944e01.tar.gz
Release 18.05
Diffstat (limited to 'service.cpp')
-rw-r--r--service.cpp28
1 files changed, 24 insertions, 4 deletions
diff --git a/service.cpp b/service.cpp
index 742091ef..4ab59c85 100644
--- a/service.cpp
+++ b/service.cpp
@@ -18,15 +18,35 @@ using namespace std;
int main(int argc, char** argv)
{
- android::sp<ArmnnDriver> driver = new ArmnnDriver(DriverOptions(argc, argv));
+ android::sp<ArmnnDriver> driver;
+ try
+ {
+ driver = new ArmnnDriver(DriverOptions(argc, argv));
+ }
+ catch (const std::exception& e)
+ {
+ ALOGE("Could not create driver: %s", e.what());
+ return EXIT_FAILURE;
+ }
android::hardware::configureRpcThreadpool(1, true);
- if (driver->registerAsService("armnn") != android::OK)
+ android::status_t status = android::UNKNOWN_ERROR;
+ try
+ {
+ status = driver->registerAsService("armnn");
+ }
+ catch (const std::exception& e)
+ {
+ ALOGE("Could not register service: %s", e.what());
+ return EXIT_FAILURE;
+ }
+ if (status != android::OK)
{
ALOGE("Could not register service");
- return 1;
+ return EXIT_FAILURE;
}
+
android::hardware::joinRpcThreadpool();
ALOGE("Service exited!");
- return 1;
+ return EXIT_FAILURE;
}