From 00b709dfff9d858b53edfd9cb8a185b120e0cbd8 Mon Sep 17 00:00:00 2001 From: Fabrice Bellard Date: Sat, 5 Apr 2025 18:22:34 +0200 Subject: [PATCH] flush stdout in console.log() (#309) --- quickjs-libc.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/quickjs-libc.c b/quickjs-libc.c index fd5d412..a659084 100644 --- a/quickjs-libc.c +++ b/quickjs-libc.c @@ -3825,6 +3825,15 @@ static JSValue js_print(JSContext *ctx, JSValueConst this_val, return JS_UNDEFINED; } +static JSValue js_console_log(JSContext *ctx, JSValueConst this_val, + int argc, JSValueConst *argv) +{ + JSValue ret; + ret = js_print(ctx, this_val, argc, argv); + fflush(stdout); + return ret; +} + void js_std_add_helpers(JSContext *ctx, int argc, char **argv) { JSValue global_obj, console, args; @@ -3835,7 +3844,7 @@ void js_std_add_helpers(JSContext *ctx, int argc, char **argv) console = JS_NewObject(ctx); JS_SetPropertyStr(ctx, console, "log", - JS_NewCFunction(ctx, js_print, "log", 1)); + JS_NewCFunction(ctx, js_console_log, "log", 1)); JS_SetPropertyStr(ctx, global_obj, "console", console); /* same methods as the mozilla JS shell */