QuickJS, the Next Generation: a mighty JavaScript engine
4f02ab8cfa
E.g. if during evaluation of module A, we start loading module B and an error occurs. This results in a call to js_free_modules() with JS_FREE_MODULE_NOT_EVALUATED, and since module A isn't yet evaluated, it gets freed prematurely. To solve this we improve js_free_modules() to ensure `eval_mark` is not set. Once js_evaluate_module() returns for module A, it will notice that an exception occurred and call js_free_modules() with JS_FREE_MODULE_NOT_EVALUATED. Since `eval_mark` has been cleared by then, module A gets cleaned up as well. Co-authored-by: Ole André Vadla Ravnås <oleavr@gmail.com> |
||
---|---|---|
.github/workflows | ||
doc | ||
examples | ||
test262@c1281dba45 | ||
tests | ||
.gitignore | ||
.gitmodules | ||
Changelog | ||
cutils.c | ||
cutils.h | ||
libbf.c | ||
libbf.h | ||
libregexp-opcode.h | ||
libregexp.c | ||
libregexp.h | ||
libunicode-table.h | ||
libunicode.c | ||
libunicode.h | ||
LICENSE | ||
list.h | ||
Makefile | ||
qjs.c | ||
qjsc.c | ||
quickjs-atom.h | ||
quickjs-libc.c | ||
quickjs-libc.h | ||
quickjs-opcode.h | ||
quickjs.c | ||
quickjs.h | ||
readme.txt | ||
release.sh | ||
repl.js | ||
run-test262.c | ||
test262.conf | ||
test262_errors.txt | ||
test262o.conf | ||
test262o_errors.txt | ||
TODO | ||
unicode_download.sh | ||
unicode_gen.c | ||
unicode_gen_def.h | ||
VERSION |
The main documentation is in doc/quickjs.pdf or doc/quickjs.html.