Open Bug 1682493 Opened 4 years ago Updated 4 years ago

[SHIP] location.reload() should abort the document synchronously

Categories

(Core :: DOM: Window and Location, defect, P3)

defect

Tracking

()

People

(Reporter: hsivonen, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [not-a-fission-bug])

From bug 1663931 comment 18:

https://searchfox.org/mozilla-central/source/layout/base/tests/test_bug842853-2.html fails in Fission with the patch for bug 1663931. The root cause appears to be the processing of location.reload() has become asynchronous while the test expects the location.reload() to abort the document synchronously and, therefore, to cause the load event not to fire for the load during which location.reload() was called.

Flags: needinfo?(rjesup)
Blocks: ship-failures
No longer blocks: fission-history
Severity: -- → S3
Priority: -- → P3

That code was actually landed by PeterV: Bug 1648033

Flags: needinfo?(rjesup) → needinfo?(peterv)
Component: DOM: Navigation → DOM: Window and Location

The component has been changed since the backlog priority was decided, so we're resetting it.
For more information, please visit auto_nag documentation.

Priority: P3 → --
Blocks: 1663931, fission-history
No longer blocks: ship-failures
Fission Milestone: --- → M7
Priority: -- → P3
Assignee: nobody → kmaglione+bmo
Status: NEW → ASSIGNED
Flags: needinfo?(peterv)

(In reply to Henri Sivonen (:hsivonen) from comment #0)

https://searchfox.org/mozilla-central/source/layout/base/tests/test_bug842853-2.html fails in Fission with the patch for bug 1663931. The root cause appears to be the processing of location.reload() has become asynchronous while the test expects the location.reload() to abort the document synchronously and, therefore, to cause the load event not to fire for the load during which location.reload() was called.

As far as I can tell, the spec does require us to abort pending document load before we return from reload(), but it doesn't look like we currently do that either with or without SHiP. It also doesn't appear to cause the test to fail. verifyAfterLoad() is just called for the load event of the initial document and successfully ends the test without ever testing that the scroll positions are preserved after the reload.

Flags: needinfo?(hsivonen)

Unassigning this since since I can't see any significant difference between the Fission and non-Fission behavior, but leaving it open, since it doesn't look like we match the spec behavior, and it does look like the test_bug842853-2.html test is broken.

Assignee: kmaglione+bmo → nobody
Status: ASSIGNED → NEW
Fission Milestone: M7 → ---
Flags: needinfo?(hsivonen)
Whiteboard: [not-a-fission-bug]
You need to log in before you can comment on or make changes to this bug.