Closed Bug 957501 Opened 10 years ago Closed 7 years ago

Error after hang and restart: SessionRestore.init called with previous execution state 'Running'

Categories

(Firefox for Metro Graveyard :: Components, defect)

x86_64
Windows 8.1
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INCOMPLETE

People

(Reporter: mbrubeck, Unassigned)

References

Details

(Whiteboard: [defect] p=5)

Attachments

(1 obsolete file)

I recently got the following error in the console, indicating we were in a state that we thought was impossible (see bug 850372):

SessionRestore.init called with previous execution state 'Running'
browser/metro/components/SessionStore.js:90

I think what happened is that Metro Firefox froze / became unresponsive (possibly because I was trying to open its JS console which contained a large number of messages.  While it was hanging, I briefly switched to the desktop and then back with alt-tab.  When I switched back, I got the splash screen and then a blank tab with no title (not my previous session, and not the start page).
The error in comment 0 was followed by this error, which might be also be related to the weird blank tab:

NS_ERROR_UNEXPECTED: Component returned failure code: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsISHEntry.adoptBFCacheEntry]
chrome://browser/content/bindings/browser.js:301
Whiteboard: [triage] [defect] p=0
Whiteboard: [triage] [defect] p=0 → [beta28] [defect] p=0
Blocks: 958170
Switching from a logged in session on irccloud.com in desktop to metro reproduces this every time. Something in the session store we process is really messed up. I tried adding a few exception traps and early returns but kept running into javascript errors and an empty tab.

Also, once you're in this "empty tab" state in metrofx, switching to desktop will totally hose up desktop ui loading. I'm left with a desktop browser that is visible but non-functional.
Blocks: 957011
Attached patch hacks (obsolete) — Splinter Review
This is my hacking around here, despite all these traps I still end up with odd errors during deserialization.
Attachment #8359771 - Attachment is patch: true
Comment on attachment 8359771 [details] [diff] [review]
hacks

Review of attachment 8359771 [details] [diff] [review]:
-----------------------------------------------------------------

::: browser/metro/components/SessionStore.js
@@ +815,5 @@
>            // until we get the real selected tab. Then we stop selecting tabs. The end result
>            // is that the right tab is selected, but we also don't get a bunch of errors
>            let bringToFront = (i + 1 <= selected) && aBringToFront;
> +          if (!tabData.entries[tabData.index - 1] || !tabData.entries[tabData.index - 1].url) {
> +            Util.dumpLn("Invalid tab entry in session store.");

this might have introduced a bug, I don't think Util is available in components.
Blocks: 957150
Bug 957150 fixes the error in deserialization, and the blank white tab.

The "SessionRestore.init called with previous execution state 'Running'" bug still exists but seems to be a separate issue, possibly harmless, and probably doesn't need to block release.
No longer blocks: 957150
Depends on: 957150
No longer blocks: 957011
No longer blocks: 958170
Whiteboard: [beta28] [defect] p=0 → [beta28] [defect] p=5
Attachment #8359771 - Attachment is obsolete: true
(In reply to Matt Brubeck (:mbrubeck) from comment #6)
> Bug 957150 fixes the error in deserialization, and the blank white tab.
> 
> The "SessionRestore.init called with previous execution state 'Running'" bug
> still exists but seems to be a separate issue, possibly harmless, and
> probably doesn't need to block release.

Anyone know how to reproduce this? I haven't had any switching issues in a while.
Moving this back to triage, given comment 6
Whiteboard: [beta28] [defect] p=5 → [triage] [defect] p=5
Blocks: metrobacklog
No longer blocks: metrov1backlog
Whiteboard: [triage] [defect] p=5 → [defect] p=5
Mass close of bugs in obsolete product https://bugzilla.mozilla.org/show_bug.cgi?id=1350354
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: