New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 772750 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Oct 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug-Regression



Sign in to add a comment

tab crashes when using module scripts in a specific way

Reported by huglovef...@gmail.com, Oct 8 2017

Issue description

UserAgent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3235.0 Safari/537.36

Steps to reproduce the problem:
1. open index.html in the attached zip file

(modules don't work from file: urls so you have to use a web server, i use the "http-server" node module because python's SimpleHTTPServer seems unreliable when used with modules)

What is the expected behavior?
it should print "Uncaught SyntaxError: The requested module does not provide an export named 'nonexistent'" twice in the console

What went wrong?
about 90% of the time, the tab crashes

Crashed report ID: 

How much crashed? Just one tab

Is it a problem with a plugin? No 

Did this work before? Yes 63.0.3221.0

Chrome version: 63.0.3235.0  Channel: canary
OS Version: 6.3
Flash Version: 

bisect-builds.py result:

You are probably looking for a change made after 503125 (known good), but no later than 503131 (first known bad).
CHANGELOG URL:
  https://chromium.googlesource.com/chromium/src/+log/07ea99d7e17fb423850453e72795646d9c9bc82c..c2eeb420384f0bf652ba03eb34b984483ff0dddb
 
crash.zip
874 bytes Download
Labels: Needs-Bisect Needs-Triage-M63
Cc: sc00335...@techmahindra.com
Components: Blink>HTML>Script
Labels: -Pri-2 -Needs-Bisect ReleaseBlock-Stable HasTestcase M-63 hasbisect Pri-1
Owner: hirosh...@chromium.org
Status: Assigned (was: Unconfirmed)
As per comment#0 suspecting https://chromium-review.googlesource.com/674748 from the given changelog.
@hiroshige: Please confirm the bug and help in re-assigning if it is not related to your change.

Adding RB-Stable as this is a recent regression. Please change if not the case.

Thanks!

Comment 3 by kouhei@chromium.org, Oct 10 2017

Cc: hirosh...@chromium.org
Owner: kouhei@chromium.org
Taking over since hiroshige@ is OOO
Project Member

Comment 4 by bugdroid1@chromium.org, Oct 11 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1009aff2d6d032b8a819b48409ffcea6f089323d

commit 1009aff2d6d032b8a819b48409ffcea6f089323d
Author: Kouhei Ueno <kouhei@chromium.org>
Date: Wed Oct 11 04:17:37 2017

[ES6 modules] HRIM may return errored module until V8 forgets instantiation errors

Today, we are in somewhat stale state where new module tree fetching algorithm
[1][2] is partially applied. This CL (temporarily) disables an assert which
exists in the final algorithm, but doesn't hold today.

Specifically, the assert in HostResolveImportedModule (HRIM [3]) Step 7 currently
doesn't hold, as the instantiation may have failed for a module script node,
and current V8 implementation records the instantiation error as an error.
See the attached test case for an example.

[1] https://github.com/whatwg/html/pull/2991
[2] https://github.com/tc39/ecma262/pull/1006
[3] https://html.spec.whatwg.org/multipage/webappapis.html#hostresolveimportedmodule(referencingscriptormodule,-specifier)

Test: external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html
Bug:  772750 ,  763597 
Change-Id: Ida600598b658c74cdbda5937219f1e62a41f2a16
Reviewed-on: https://chromium-review.googlesource.com/708078
Reviewed-by: Yutaka Hirano <yhirano@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Commit-Queue: Kouhei Ueno <kouhei@chromium.org>
Cr-Commit-Position: refs/heads/master@{#507888}
[add] https://crrev.com/1009aff2d6d032b8a819b48409ffcea6f089323d/third_party/WebKit/LayoutTests/external/wpt/html/semantics/scripting-1/the-script-element/module/instantiation-error-8.html
[modify] https://crrev.com/1009aff2d6d032b8a819b48409ffcea6f089323d/third_party/WebKit/Source/core/dom/ScriptModuleResolverImpl.cpp

Comment 5 by kouhei@chromium.org, Oct 11 2017

Status: Fixed (was: Assigned)

Sign in to add a comment