gecko-dev/toolkit/components/startup
Kris Maglione 2faddce683 Bug 1422087: Purge startup caches after an incomplete startup. r=Mossop
Since we know that corrupt startup caches can and do cause startup crashes, we
should ideally purge them any time we detect that the last startup resulted in
a crash. The alternative is waiting until the users restart enough times to
trigger safe mode, and hope that they start in safe mode and then immediately
restart in normal mode. This is not a great user experience.

Unfortunately, the normal startup crash detection mechanism relies on
the preference service, which starts up far too late for us to make this
decision effectively.

To work around that, this patch adds a new startup crash detection mechanism
that creates an incomplete startup canary file which we remove at the end of
the startup crash detection window, or on any sort of graceful exit.

MozReview-Commit-ID: ALaLsyF4meg

--HG--
extra : rebase_source : c97f8a2cac2c30f8cc22b05a62058aef2ad07870
2018-03-05 15:19:07 -08:00
..
public Bug 1298930 - Remove the eRestarti386 and eRestartx86_64 constants. r=spohl 2017-08-29 05:50:00 -04:00
tests Bug 1442651 - Remove the tabbrowser element and binding. r=bgrins 2018-03-05 20:33:36 +01:00
moz.build
mozprofilerprobe.mof
nsAppStartup.cpp Bug 1422087: Purge startup caches after an incomplete startup. r=Mossop 2018-03-05 15:19:07 -08:00
nsAppStartup.h
nsUserInfo.h
nsUserInfoMac.h
nsUserInfoMac.mm
nsUserInfoUnix.cpp Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm. 2017-08-17 15:29:03 +10:00
nsUserInfoWin.cpp Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm. 2017-08-17 15:29:03 +10:00
StartupTimeline.cpp Bug 1386186 - Added firstPaint scalar, timestamps scalar section, and tests. r=gfritzsche 2017-08-22 11:01:00 -04:00
StartupTimeline.h Bug 1403868 (part 4) - Reduce tools/profiler/public/*.h to almost nothing in non-MOZ_GECKO_PROFILER builds. r=mstange. 2017-10-04 09:11:18 +11:00