diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2019-09-19 19:56:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-09-19 19:56:05 +0200 |
commit | 318ac6ee1395c121fdabc12abfe43b0980ef467c (patch) | |
tree | 839a80216c6ff5fd4a156bc787d4684aab1a5e7c /modules/gdscript/gdscript_function.cpp | |
parent | 996e30ee94eca4973aef383d86a7e86c88ff1134 (diff) | |
parent | aa8e3e7b0fcb02c641b10e9748e3d9406c300884 (diff) | |
download | redot-engine-318ac6ee1395c121fdabc12abfe43b0980ef467c.tar.gz |
Merge pull request #31142 from mitchcurtis/assert-message
GDScript: add an optional message parameter to assert()
Diffstat (limited to 'modules/gdscript/gdscript_function.cpp')
-rw-r--r-- | modules/gdscript/gdscript_function.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/modules/gdscript/gdscript_function.cpp b/modules/gdscript/gdscript_function.cpp index 68f2a9473e..bdeea9cef3 100644 --- a/modules/gdscript/gdscript_function.cpp +++ b/modules/gdscript/gdscript_function.cpp @@ -1475,20 +1475,25 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a DISPATCH_OPCODE; OPCODE(OPCODE_ASSERT) { - CHECK_SPACE(2); + CHECK_SPACE(3); #ifdef DEBUG_ENABLED GET_VARIANT_PTR(test, 1); + GET_VARIANT_PTR(message, 2); bool result = test->booleanize(); if (!result) { - - err_text = "Assertion failed."; + const String &message_str = *message; + if (message_str.empty()) { + err_text = "Assertion failed."; + } else { + err_text = "Assertion failed: " + message_str; + } OPCODE_BREAK; } #endif - ip += 2; + ip += 3; } DISPATCH_OPCODE; |