diff options
-rw-r--r-- | installed-tests/minijasmine.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/installed-tests/minijasmine.cpp b/installed-tests/minijasmine.cpp index 17b564d1..2e92d640 100644 --- a/installed-tests/minijasmine.cpp +++ b/installed-tests/minijasmine.cpp @@ -20,6 +20,13 @@ exit(1); } +[[noreturn]] static void bail_out(GjsContext* gjs_context, GError* error) { + g_print("Bail out! %s\n", error->message); + g_object_unref(gjs_context); + g_error_free(error); + exit(1); +} + int main(int argc, char **argv) { @@ -67,7 +74,7 @@ main(int argc, char **argv) int exitcode_ignored; if (!gjs_context_eval(cx, "imports.minijasmine;", -1, "<jasmine>", &exitcode_ignored, &error)) - bail_out(cx, error->message); + bail_out(cx, error); bool eval_as_module = argc >= 3 && strcmp(argv[2], "-m") == 0; if (eval_as_module) { @@ -78,7 +85,7 @@ main(int argc, char **argv) success = gjs_context_eval_file(cx, argv[1], &exitcode_ignored, &error); } if (!success) - bail_out(cx, error->message); + bail_out(cx, error); /* jasmineEnv.execute() queues up all the tests and runs them * asynchronously. This should start after the main loop starts, otherwise @@ -102,7 +109,7 @@ main(int argc, char **argv) success = gjs_context_eval(cx, start_suite_script, -1, "<jasmine-start>", &code, &error); if (!success) - bail_out(cx, error->message); + bail_out(cx, error); if (code != 0) { success = gjs_context_eval(cx, R"js( |