From 6876beca27c703928fac8d9b2d5e21240fbe117a Mon Sep 17 00:00:00 2001 From: Eduardo Speroni Date: Tue, 28 Jun 2022 13:20:29 -0300 Subject: [PATCH] feat: add support for reasons on assertion failure --- NativeScript/runtime/Helpers.h | 2 +- NativeScript/runtime/Helpers.mm | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/NativeScript/runtime/Helpers.h b/NativeScript/runtime/Helpers.h index e840943a..1cec7b59 100644 --- a/NativeScript/runtime/Helpers.h +++ b/NativeScript/runtime/Helpers.h @@ -65,7 +65,7 @@ const std::string GetCurrentScriptUrl(v8::Isolate* isolate); bool LiveSync(v8::Isolate* isolate); -void Assert(bool condition, v8::Isolate* isolate = nullptr); +void Assert(bool condition, v8::Isolate* isolate = nullptr, std::string const &reason = std::string()); } diff --git a/NativeScript/runtime/Helpers.mm b/NativeScript/runtime/Helpers.mm index 578ded00..b7d05375 100644 --- a/NativeScript/runtime/Helpers.mm +++ b/NativeScript/runtime/Helpers.mm @@ -657,7 +657,7 @@ return true; } -void tns::Assert(bool condition, Isolate* isolate) { +void tns::Assert(bool condition, Isolate* isolate, std::string const &reason) { if (!RuntimeConfig.IsDebug) { assert(condition); return; @@ -676,6 +676,9 @@ if (isolate == nullptr) { Log(@"====== Assertion failed ======"); + if(!reason.empty()) { + Log(@"Reason: %s", reason.c_str()); + } Log(@"Native stack trace:"); LogBacktrace(); assert(false);