commit | 5398657e43e127a566bdc201649a7293bf62a865 | [log] [tgz] |
---|---|---|
author | Austin Foxley <afoxley@google.com> | Fri Feb 03 21:54:26 2023 +0000 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Feb 03 21:54:26 2023 +0000 |
tree | e12268a286dec7a160544a00c26445a86c45755f | |
parent | c8107b03c69d8a9affe54e60ddf459db41659840 [diff] |
pw_assert: Add option to pw_assert_basic to call _Exit Add option to exit the pw_assert_basic backend by calling std::_Exit to exit the program without running atexit handlers or destructors. This is needed in the following two cases: In the case of using pw_build's `wrap_abort`, and the `pw_assert_basic` default backend, assert failures would infinitely recurse calling abort. In addition, when not using `wrap_abort` some C library implementations will attempt to take mutexes out, which shouldn't be done in a crash handler as it may deadlock. Change-Id: I9839a9b1fb62b89192c019629ef7710beb80f905 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/127191 Reviewed-by: Wyatt Hepler <hepler@google.com> Commit-Queue: Auto-Submit <auto-submit@pigweed.google.com.iam.gserviceaccount.com> Pigweed-Auto-Submit: Austin Foxley <afoxley@google.com>
Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.
For more information please see our website: https://pigweed.dev/.