Closed Bug 460112 Opened 16 years ago Closed 16 years ago

New 3.1b2 Session Restore processing will result in infinite crash loop if reproducible crash occurs within 10 seconds of startup

Categories

(Firefox :: Session Restore, defect)

x86
Windows XP
defect
Not set
major

Tracking

()

VERIFIED DUPLICATE of bug 451292

People

(Reporter: morac, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b2pre) Gecko/20081015 Minefield/3.1b2pre

Bug 448976 removes the session restore prompt that appears after a crash and instead replaces it with an error window.  By default the error page won't show up until the browser crashes two times within a 6 hour period.  After the first crash the last browser session is automatically restored.  A "recentCrashes" counter was added to the session data in the sessionstore.js file to keep track of the number of recent crashes that have occurred.

The problem with this implementation is that Firefox won't write to the sessionstore.js file until 10 seconds after Firefox has started.  So if Firefox crashes and something in the session data or web pages causes a reproducible crash in Firefox that occurs within 10 seconds of it being started, then the error page will never be displayed.  At this point the only way to start Firefox would be to manually delete the sessionstore.js file which defeats the purpose of the new error page's ability to choose which tabs to restore.

Reproducible: Always

Steps to Reproduce:
1. Open a browser window with a bunch of tabs open (I used 10) and load a variety of web sites.
2. Kill the Firefox processes.
3. Start Firefox again and kill the Firefox process within 10 seconds.
4. Repeat step #3 ad infinitum.
Actual Results:  
Firefox will never display the Restore error page as long as the "crashes" occur within 10 seconds of the browser starting since the sessionstore.js file is never updated.

Expected Results:  
The recovery page should display after the 2nd "crash".

If the sessionstore.js file is used to store the "recentCrashes" count, then it needs to be written the moment Firefox starts up before the window starts to load the session data.

Perhaps the recentCrashes should be stored as a preference and force saved on startup?
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.