Revision 32d9176e0831218c5c4d06c9c71a6f5123c9e204 authored by David Rajchenbach-Teller on 02 February 2016, 11:56:11 UTC, committed by David Rajchenbach-Teller on 02 February 2016, 11:56:11 UTC
While investigating bug 1243549, we encountered several instances of the following error message during each startup: ************************* A coding exception was thrown and uncaught in a Task. Full message: TypeError: this.Paths is null Full stack: Agent.wipe@resource:///modules/sessionstore/SessionWorker.js:296:7 worker.dispatch@resource:///modules/sessionstore/SessionWorker.js:21:24 anonymous/AbstractWorker.prototype.handleMessage@resource://gre/modules/workers/PromiseWorker.js:122:16 @resource:///modules/sessionstore/SessionWorker.js:30:41 ************************* These messages can be explained as follows: * If sanitization has failed during shutdown, it attempts again to sanitize during startup. This happens more often than it used to, because of 1/ startup bug fixes in bug 1089695; 2/ new shutdown bugs most likely also added by or around bug 1089695. * Sanitization during startup doesn't wait until Session Restore has properly started to sanitize the session. So sanitization of Session Restore file fails. This has probably always been the case, except we never noticed. * For some reason I do not understand, it attempts to sanitize several times. * I suspect that this can cause problems during startup, as sanitization and Session Restore race to use/remove the files of Session Restore. This patch makes sure that SessionFile.wipe() waits until initialization of SessionFile is complete before proceeding. --HG-- extra : source : a768b93e7f0f5e63d2b907d0e09d7c08247f9942 extra : intermediate-source : 932d8e4fcf3aa927c3fac8b4535d67e5b4638138
1 parent 8857c37
File | Mode | Size |
---|---|---|
accessible | ||
addon-sdk | ||
b2g | ||
browser | ||
build | ||
caps | ||
chrome | ||
config | ||
db | ||
devtools | ||
docshell | ||
dom | ||
editor | ||
embedding | ||
extensions | ||
gfx | ||
gradle | ||
hal | ||
image | ||
intl | ||
ipc | ||
js | ||
layout | ||
media | ||
memory | ||
mfbt | ||
mobile | ||
modules | ||
mozglue | ||
netwerk | ||
nsprpub | ||
other-licenses | ||
parser | ||
probes | ||
python | ||
rdf | ||
security | ||
services | ||
startupcache | ||
storage | ||
testing | ||
toolkit | ||
tools | ||
uriloader | ||
view | ||
webapprt | ||
widget | ||
xpcom | ||
xpfe | ||
xulrunner | ||
.clang-format | -rw-r--r-- | 104 bytes |
.clang-format-ignore | -rw-r--r-- | 26 bytes |
.eslintignore | -rw-r--r-- | 4.1 KB |
.eslintrc | -rw-r--r-- | 151 bytes |
.gdbinit | -rw-r--r-- | 4.9 KB |
.gitignore | -rw-r--r-- | 1.8 KB |
.hgignore | -rw-r--r-- | 2.8 KB |
.hgtags | -rw-r--r-- | 14.5 KB |
.lldbinit | -rw-r--r-- | 1.6 KB |
.ycm_extra_conf.py | -rw-r--r-- | 1.3 KB |
AUTHORS | -rw-r--r-- | 33.5 KB |
Android.mk | -rw-r--r-- | 284 bytes |
CLOBBER | -rw-r--r-- | 1.0 KB |
GNUmakefile | -rw-r--r-- | 261 bytes |
LEGAL | -rw-r--r-- | 2.5 KB |
LICENSE | -rw-r--r-- | 389 bytes |
Makefile.in | -rw-r--r-- | 10.9 KB |
README.txt | -rw-r--r-- | 1.2 KB |
aclocal.m4 | -rw-r--r-- | 1.9 KB |
build.gradle | -rw-r--r-- | 4.1 KB |
client.mk | -rw-r--r-- | 15.4 KB |
client.py | -rwxr-xr-x | 5.7 KB |
configure.in | -rw-r--r-- | 305.0 KB |
gradle.properties | -rw-r--r-- | 48 bytes |
gradlew | -rwxr-xr-x | 4.8 KB |
mach | -rwxr-xr-x | 5.7 KB |
moz.build | -rw-r--r-- | 1.6 KB |
mozilla-config.h.in | -rw-r--r-- | 2.1 KB |
settings.gradle | -rw-r--r-- | 2.2 KB |
test.mozbuild | -rw-r--r-- | 429 bytes |
Computing file changes ...