Closed Bug 292969 Opened 19 years ago Closed 3 years ago

Thawing presshell could synchronously reenter nsDocShell::RestorePresentation

Categories

(Core :: DOM: Navigation, defect)

defect
Not set
major

Tracking

()

RESOLVED WONTFIX
mozilla1.9alpha1

People

(Reporter: bzbarsky, Unassigned)

References

Details

Attachments

(1 file)

Thawing will reframe plugins, which can fire broken-plugin events, which can
trigger code that changes the URI in the docshell or triggers history traversals.

That would synchronously reenter nsDocShell::RestorePresentation and probably
make the docshell somewhat confused.
I'm not convinced that it's actually a problem since Thaw() is the absolute last
thing that we do.  After calling Thaw(), the docshell totally unwinds from
RestorePresentation/InternalLoad/LoadURI.  So, we wouldn't get into a situation
where we make assumptions about the current URI or content viewer after
RestorePresentation finishes.

It's a bit fragile, I think we can live with it though for FF 1.5.  I'll write
up a testcase for completeness.
Attached file testcase
Note that the testcase does not function, i.e. you are not ever redirected to
www.mozilla.org.  I think the reason is the check for an actual PluginInstance
that was done for bug 299153.
pushing out since I can't find anything that actually breaks
Target Milestone: --- → mozilla1.9alpha
Component: History: Session → Document Navigation
QA Contact: history.session → docshell

Tested this on Chrome and Firefox and it has the same behaviour using the provided test case. I get redirected to google.com instead of mozilla.com as Bryan said it should.
Boris is this still reproducible for you or should we close it?

Flags: needinfo?(bzbarsky)

nsDocShell::RestorePresentation is going away anyway.

Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → WONTFIX
Flags: needinfo?(bzbarsky)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: