• Kim-Anh Tran's avatar
    [wasm] Removing cyclic dependency caused by the CompilationState · 071cecc0
    Kim-Anh Tran authored
    Removes the deferred handle reference to the native context that
    caused a cyclic dependency, which resulted in a memory leak. Instead of
    keeping a reference to the native context, we use a phantom reference
    to the WasmCompiledModule in order to get the context.
    All foreground tasks are now registered in its own foreground task
    manager, in order to make sure that we cancel all scheduled
    foreground tasks as soon as the CompilationState is collected.
    
    Bug: chromium:825741
    Also-by: ahaas@chromium.org
    Change-Id: Id69426a15280a14a1dc3ecd035415e7cfa61780b
    Reviewed-on: https://chromium-review.googlesource.com/982622Reviewed-by: 's avatarAndreas Haas <ahaas@chromium.org>
    Reviewed-by: 's avatarUlan Degenbaev <ulan@chromium.org>
    Commit-Queue: Kim-Anh Tran <kimanh@google.com>
    Cr-Commit-Position: refs/heads/master@{#52270}
    071cecc0
module-compiler.h 7.89 KB