Closed Bug 488238 Opened 12 years ago Closed 12 years ago

Blank about:sessionrestore

Categories

(Firefox :: Session Restore, defect, P2)

3.5 Branch
All
macOS
defect

Tracking

()

VERIFIED FIXED
Firefox 3.6a1

People

(Reporter: faaborg, Assigned: zeniko)

References

Details

(Keywords: polish, verified1.9.1, Whiteboard: [polish-easy] [polish-interactive][polish-p4])

Attachments

(2 files)

I encountered what the screen shot displays.  There must have been two crashes in a row since I am getting about:sessionrestore, however it doesn't look like I actually had a session to restore (I'm on OS X and regularly close out all my tabs by hitting command-w).

So my best guess is that the browser crashed twice due to a reason unrelated to my tab set (I didn't have one), and then I was asked if I wanted to restore my session, even though I didn't have one.

If that is the sequence of events that produced the empty about:sessionrestore, we should probably check to see if there is a session before we ask the user if they want to restore it.
Whiteboard: [polish-easy] [polish-interactive]
Can't you still have a session with one window with one tab?  I would think Firefox should offer to restore your session even if only one tab was open, epecially if you had input data into a form.
Depends on: 481090
OS: All → Mac OS X
Version: Trunk → 3.1 Branch
Attached patch obvious fixSplinter Review
Right, it doesn't make much sense to display about:sessionrestore when we don't have data for any open windows at all.
Attachment #372628 - Flags: review?(dietrich)
Under which situation someone can see this blank page on OS X? I tried but I wasn't successful.
Comment on attachment 372628 [details] [diff] [review]
obvious fix

r=me
Attachment #372628 - Flags: review?(dietrich) → review+
setting in-testsuite? to flag for eventual testing with windmill or something like that.
Flags: in-testsuite?
For Mozmill we still use the in-litmus flag. But I need clear STR for that. Will an unit/mochitest test also be possible?
StR (only works on OS X):
1. Close all Windows.
2. Wait a few seconds, then kill Firefox.
3. Restart Firefox and repeat these steps once.

Expected result:
Restarting Firefox again should load just a blank page (i.e. nothing to restore).

Actual result:
about:sessionrestore is displayed with an empty list.

(In reply to comment #6)
> Will an unit/mochitest test also be possible?

No. Unit tests don't work for when a crash/restart is required.
Assignee: nobody → zeniko
Keywords: checkin-needed
It still is All->All as this can be done on Windows/Linux if you open the error console and close all the browser windows.
OS: Mac OS X → All
(In reply to comment #8)
> It still is All->All as this can be done on Windows/Linux if you open the error
> console and close all the browser windows.

No, in that case Firefox should (offer to) restore the last closed browser window. Bug 481090 changed this specifically for OS X.

If you do have StR for this on Windows/Linux, this would be a different bug.
OS: All → Mac OS X
(In reply to comment #7)
> StR (only works on OS X):
> 1. Close all Windows.
> 2. Wait a few seconds, then kill Firefox.
> 3. Restart Firefox and repeat these steps once.

Those steps work fine. Probably I haven't waited long enough during my last test. Readjusting flags. We will add a test to Litmus.
Flags: in-testsuite?
Flags: in-testsuite-
Flags: in-litmus?
(In reply to comment #10)
> Probably I haven't waited long enough during my last test.

Yeah, with "a few seconds" I really meant "ten (resp. one thousandth of whatever browser.sessionstore.interval was set to at the last regular shutdown)".
Flags: blocking-firefox3.5?
Flags: blocking-firefox3.5? → blocking-firefox3.5+
Priority: -- → P2
http://hg.mozilla.org/mozilla-central/rev/e6ad6f4cbb70
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → Firefox 3.6a1
Blocks: 488669
Whiteboard: [polish-easy] [polish-interactive] → [needs 1.9.1 landing] [polish-easy] [polish-interactive]
Sorry for late comment on fixed bug, but while porting this bug to SeaMonkey Neil suggested:

Does this work if rewritten as:
if (!aState.windows || !aState.windows.length)
  return false;

let winData = aState.windows;
if (winData.length == 1 && winData[0].tabs &&

https://bugzilla.mozilla.org/show_bug.cgi?id=488669#c1
It seems that Neil wanted to get rid of "|| null". But that can be removed without the other change, which just makes the code less convenient.
http://hg.mozilla.org/releases/mozilla-1.9.1/rev/687e516cb5ff
Whiteboard: [needs 1.9.1 landing] [polish-easy] [polish-interactive] → [polish-easy] [polish-interactive]
OS: Mac OS X → All
Dao, see comment 9. This is OS X only.
OS: All → Mac OS X
Verified with:

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.2a1pre) Gecko/20090420 Minefield/3.6a1pre ID:20090420031158

Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.1b4pre) Gecko/20090420 Shiretoko/3.5b4pre ID:20090420031111
Status: RESOLVED → VERIFIED
This bug's priority relative to the set of other polish bugs is:
P4 - Polish issue that is rarely encountered, and is easily identifiable.
Whiteboard: [polish-easy] [polish-interactive] → [polish-easy] [polish-interactive][polish-p4]
You need to log in before you can comment on or make changes to this bug.