Skip to content

should the script end tag steps abort earlier if the microtask checkpoint aborts the parser? #11393

Open
@dbaron

Description

@dbaron

What is the issue with the HTML Standard?

https://issues.chromium.org/40836369 makes me wonder if the script end tag steps should abort earlier if their first step (if ..., "perform a microtask checkpoint") causes the parser to be aborted.

In the bug in question, there's actually a Chromium crash because it effectively continues on to the test

If the parser's Document has a style sheet that is blocking scripts or the script's ready to be parser-executed is false: spin the event loop until the parser's Document has no style sheet that is blocking scripts and the script's ready to be parser-executed becomes true.

and the "has a style sheet that is blocking scripts" test crashes due to a null document pointer in the case where the microtask checkpoint aborted the parser. (In reality, tracing code performing the same test crashes slightly earlier, but it's basically equivalent!)

I think Chromium should have bailed out earlier in this case, although it's not clear exactly where it should have bailed out... and one could argue that the test in question shouldn't crash even if the parser has been aborted.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions