[wasm] Clear owned_memory list of native modules after freeing
The call to isolate_->AdjustAmountOfExternalAllocatedMemory in WasmCodeManager::FreeNativeModuleMemories can cause a GC, which can indirectly call WasmCodeManager::FreeNativeModuleMemories again. It seems that this recursive call can cause memory to be deallocated twice. With this CL we clear the list of owned_memory after all entries were deallocated so that we cannot deallocate them again. I think this CL fixes a crash we saw on ChromeCrash. I don't know how to reproduce the issue though, or how to write a test for it. R=mstarzinger@chromium.org Bug: chromium:812532 Change-Id: I3b66274f9b72919952a4211e984192c0867a6c22 Reviewed-on: https://chromium-review.googlesource.com/921226Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51312}
Showing
Please
register
or
sign in
to comment