[gjs/ewlsh/march-maintenance] context: Log JavaScript errors in bootstrap code prior to exiting




commit 4bb233991d0cace79f6c2d527403217707b1b922
Author: Evan Welsh <contact evanwelsh com>
Date:   Sat Mar 5 11:27:30 2022 -0800

    context: Log JavaScript errors in bootstrap code prior to exiting

 gjs/context.cpp | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
---
diff --git a/gjs/context.cpp b/gjs/context.cpp
index b1cb934bc..d6d54c369 100644
--- a/gjs/context.cpp
+++ b/gjs/context.cpp
@@ -598,7 +598,12 @@ static void load_context_module(JSContext* cx, const char* uri,
     GjsContextPrivate::from_cx(cx)->main_loop_hold();
     bool ok = add_promise_reactions(
         cx, evaluation_promise, on_context_module_resolved,
-        [](JSContext* cx, unsigned, JS::Value*) {
+        [](JSContext* cx, unsigned argc, JS::Value* vp) {
+            JS::CallArgs args = JS::CallArgsFromVp(argc, vp);
+
+            JS::HandleValue error = args.get(0);
+            gjs_log_exception_full(cx, error, nullptr, G_LOG_LEVEL_CRITICAL);
+
             GjsContextPrivate::from_cx(cx)->main_loop_release();
 
             // Abort because this module is required.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]