Module: wine Branch: master Commit: e8ee6ddae8077873c4a06530fd793a1c8c942428 URL: https://gitlab.winehq.org/wine/wine/-/commit/e8ee6ddae8077873c4a06530fd793a1...
Author: Gabriel Ivăncescu gabrielopcode@gmail.com Date: Thu Dec 8 17:02:50 2022 +0200
jscript: Implement a Garbage Collector to deal with circular references.
Implement a basic GC based on the mark-and-sweep algorithm, without requiring manually specifying "roots", which vastly simplifies the code.
Signed-off-by: Gabriel Ivăncescu gabrielopcode@gmail.com
---
dlls/jscript/dispex.c | 324 ++++++++++++++++++++++++++++++++++++++++++++++ dlls/jscript/engine.c | 28 ++++ dlls/jscript/enumerator.c | 11 +- dlls/jscript/function.c | 88 +++++++++++-- dlls/jscript/jscript.c | 3 + dlls/jscript/jscript.h | 20 ++- dlls/jscript/jsregexp.c | 17 ++- dlls/jscript/set.c | 37 +++++- dlls/jscript/tests/run.c | 18 +++ 9 files changed, 532 insertions(+), 14 deletions(-)