]> git.kaiwu.me - quickjs.git/commitdiff
disable rejection tracker in the repl - repl cleanup
authorFabrice Bellard <fabrice@bellard.org>
Thu, 27 Mar 2025 14:34:20 +0000 (15:34 +0100)
committerFabrice Bellard <fabrice@bellard.org>
Thu, 27 Mar 2025 14:34:20 +0000 (15:34 +0100)
qjs.c
repl.js

diff --git a/qjs.c b/qjs.c
index 401bed0565ee6f6c130f809ba95241e1c6c80373..3c1ee99c084b63605fccd400e1827b347ae691d3 100644 (file)
--- a/qjs.c
+++ b/qjs.c
@@ -465,6 +465,7 @@ int main(int argc, char **argv)
                 goto fail;
         }
         if (interactive) {
+            JS_SetHostPromiseRejectionTracker(rt, NULL, NULL);
             js_std_eval_binary(ctx, qjsc_repl, qjsc_repl_size, 0);
         }
         js_std_loop(ctx);
diff --git a/repl.js b/repl.js
index e6e720b50f575e7f0ddd5b6a3f2c7f6d7c648fdb..3f8393a13e32e8203bdad0586585973f195f2f59 100644 (file)
--- a/repl.js
+++ b/repl.js
@@ -1098,24 +1098,20 @@ import * as os from "os";
         }
         mexpr = "";
 
-        eval_and_print_start(expr, true);
+        eval_and_print_start(expr);
 
         return true;
     }
 
-    function eval_and_print_start(expr, is_async) {
+    function eval_and_print_start(expr) {
         var result;
 
         try {
             eval_start_time = os.now();
             /* eval as a script */
-            result = std.evalScript(expr, { backtrace_barrier: true, async: is_async });
-            if (is_async) {
-                /* result is a promise */
-                result.then(print_eval_result, print_eval_error);
-            } else {
-                print_eval_result({ value: result });
-            }
+            result = std.evalScript(expr, { backtrace_barrier: true, async: true });
+            /* result is a promise */
+            result.then(print_eval_result, print_eval_error);
         } catch (error) {
             print_eval_error(error);
         }