From f87ad9690fd42b3cc9aa1f5a36e04becfc326348 Mon Sep 17 00:00:00 2001 From: Marcin Kraglak Date: Mon, 31 Mar 2014 14:45:13 +0200 Subject: [PATCH] android: Fix NULL pointer dereference If there is no adapter, hal_ipc in not initialized. Below is message from valgrind: ==22501== Invalid read of size 4 ==22501== at 0x805B809: ipc_unregister (ipc.c:421) ==22501== by 0x804AEAF: main (main.c:548) ==22501== Address 0x4 is not stack'd, malloc'd or (recently) free'd --- android/main.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/android/main.c b/android/main.c index 828f81db1..e229a6db4 100644 --- a/android/main.c +++ b/android/main.c @@ -541,8 +541,11 @@ int main(int argc, char *argv[]) bt_bluetooth_cleanup(); g_main_loop_unref(event_loop); - ipc_unregister(hal_ipc, HAL_SERVICE_ID_CORE); - ipc_cleanup(hal_ipc); + /* If no adapter was initialized, hal_ipc is NULL */ + if (hal_ipc) { + ipc_unregister(hal_ipc, HAL_SERVICE_ID_CORE); + ipc_cleanup(hal_ipc); + } info("Exit"); -- 2.47.3