diff --git a/cxx/ffi.cpp b/cxx/ffi.cpp index 12da8cf..5d09474 100644 --- a/cxx/ffi.cpp +++ b/cxx/ffi.cpp @@ -160,9 +160,8 @@ extern "C" DLLEXPORT JSValue *jsEval(JSContext *ctx, const char *input, size_t input_len, const char *filename, int32_t eval_flags) { JSRuntime *rt = JS_GetRuntime(ctx); - uint8_t *stack_top = JS_SetStackTop(rt, 0); + JS_UpdateStackTop(rt); JSValue *ret = new JSValue(JS_Eval(ctx, input, input_len, filename, eval_flags)); - JS_SetStackTop(rt, stack_top); return ret; } @@ -262,9 +261,8 @@ extern "C" DLLEXPORT const char *jsToCString(JSContext *ctx, JSValueConst *val) { JSRuntime *rt = JS_GetRuntime(ctx); - uint8_t *stack_top = JS_SetStackTop(rt, 0); + JS_UpdateStackTop(rt); const char *ret = JS_ToCString(ctx, *val); - JS_SetStackTop(rt, stack_top); return ret; } @@ -355,9 +353,8 @@ extern "C" int32_t argc, JSValueConst *argv) { JSRuntime *rt = JS_GetRuntime(ctx); - uint8_t *stack_top = JS_SetStackTop(rt, 0); + JS_UpdateStackTop(rt); JSValue *ret = new JSValue(JS_Call(ctx, *func_obj, *this_obj, argc, argv)); - JS_SetStackTop(rt, stack_top); return ret; } @@ -373,10 +370,9 @@ extern "C" DLLEXPORT int32_t jsExecutePendingJob(JSRuntime *rt) { - uint8_t *stack_top = JS_SetStackTop(rt, 0); + JS_UpdateStackTop(rt); JSContext *ctx; int ret = JS_ExecutePendingJob(rt, &ctx); - JS_SetStackTop(rt, stack_top); return ret; } diff --git a/cxx/quickjs b/cxx/quickjs index 7daa190..d5bd943 160000 --- a/cxx/quickjs +++ b/cxx/quickjs @@ -1 +1 @@ -Subproject commit 7daa190ca7930bab95b1b778c515ff05b1584ab8 +Subproject commit d5bd943ea93e901ea7a2f65462eaba062180be40