From b1215a6ddddaf6def26a5dcb89b2bf82ac710233 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beat=20K=C3=BCng?= Date: Tue, 25 Jul 2017 11:44:56 +0200 Subject: [PATCH] px4_shutdown_request: make sure we release the lock in every case board_shutdown should not return, but just in case --- src/platforms/common/shutdown.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/platforms/common/shutdown.cpp b/src/platforms/common/shutdown.cpp index 772ba3aa09..8704062657 100644 --- a/src/platforms/common/shutdown.cpp +++ b/src/platforms/common/shutdown.cpp @@ -94,6 +94,7 @@ int px4_unregister_shutdown_hook(shutdown_hook_t hook) int px4_shutdown_request(bool reboot, bool to_bootloader) { + int ret = 0; pthread_mutex_lock(&shutdown_mutex); // FIXME: if shutdown_lock_counter > 0, we should wait, but unfortunately we don't have work queues @@ -101,12 +102,12 @@ int px4_shutdown_request(bool reboot, bool to_bootloader) px4_systemreset(to_bootloader); } else { - return board_shutdown(); + ret = board_shutdown(); } pthread_mutex_unlock(&shutdown_mutex); - return 0; + return ret; } #else