ModuleTreeLinker DCHECK failure on loading same module with different specifiers |
||||
Issue descriptionOriginally reported by rambojoin@gmail.com at https://bugs.chromium.org/p/v8/issues/detail?id=7246
,
Jan 2 2018
,
Jan 2 2018
,
Jan 2 2018
Draft CL: https://chromium-review.googlesource.com/c/chromium/src/+/847296 (commit message to be updated)
,
Jan 4 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/854561be02be15f3a075d0ef4a755c0953db21bd commit 854561be02be15f3a075d0ef4a755c0953db21bd Author: Hiroshige Hayashizaki <hiroshige@chromium.org> Date: Thu Jan 04 23:22:22 2018 [ES6 Modules] Fix importing a module with different specifiers ModuleRequestsFromScriptModule() can contain the same URL multiple times if a module is imported multiple times with different specifiers. Previously, InitiateInternalModuleScriptGraphFetching() was invoked multiple times for the same URL, and thus caused DCHECK() to fail or module loading to never finish. This CL adds the URL of imported modules to |visited_set_| while iterating ModuleRequestsFromScriptModule(), not in InitiateInternalModuleScriptGraphFetching(), to avoid the duplicated InitiateInternalModuleScriptGraphFetching() calls. This is also what is done in the spec. Bug: 797867 Change-Id: I583033ac3f168b5b50bdf6d49ae9563b5eda36ea Reviewed-on: https://chromium-review.googlesource.com/847296 Commit-Queue: Hiroshige Hayashizaki <hiroshige@chromium.org> Reviewed-by: Kouhei Ueno <kouhei@chromium.org> Cr-Commit-Position: refs/heads/master@{#527141} [add] https://crrev.com/854561be02be15f3a075d0ef4a755c0953db21bd/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/duplicated-imports-1.html [add] https://crrev.com/854561be02be15f3a075d0ef4a755c0953db21bd/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/duplicated-imports-2.html [add] https://crrev.com/854561be02be15f3a075d0ef4a755c0953db21bd/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/export-default.js [modify] https://crrev.com/854561be02be15f3a075d0ef4a755c0953db21bd/third_party/WebKit/Source/core/loader/modulescript/ModuleTreeLinker.cpp
,
Jan 23 2018
|
||||
►
Sign in to add a comment |
||||
Comment 1 by kouhei@chromium.org
, Dec 28 2017