Open
Bug 1151300
Opened 10 years ago
Updated 3 years ago
Uncaught exceptions at nightly startup
Categories
(Toolkit :: Async Tooling, defect)
Tracking
()
NEW
| Tracking | Status | |
|---|---|---|
| firefox40 | --- | affected |
People
(Reporter: gaston, Unassigned)
Details
Every time i start a nightly build from m-i or m-c on an openbsd box, those two exceptions are spun:
*************************
A coding exception was thrown and uncaught in a Task.
Full message: TypeError: malformed UTF-8 character sequence at offset 12
Full stack: toString@resource://gre/modules/osfile/osfile_unix_allthreads.jsm:92:12
task_init@resource://gre/components/nsSearchService.js:4862:11
TaskImpl_run@resource://gre/modules/Task.jsm:331:41
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:870:21
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
this.PromiseWalker.scheduleWalkerLoop/<@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:688:37
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:688:5
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:709:7
this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:671:7
onError@resource://gre/modules/osfile/osfile_native.jsm:66:7
*************************
*************************
A coding exception was thrown and uncaught in a Task.
Full message: TypeError: ex is undefined
Full stack: task@resource://gre/components/nsSearchService.js:4129:1
TaskImpl_run@resource://gre/modules/Task.jsm:331:41
Handler.prototype.process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:870:21
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:746:7
this.PromiseWalker.scheduleWalkerLoop/<@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:688:37
Promise*this.PromiseWalker.scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:688:5
this.PromiseWalker.schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:709:7
this.PromiseWalker.completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:671:7
onError@resource://gre/modules/osfile/osfile_native.jsm:66:7
*************************
Dunno if it's specific to OpenBSD environment (i dont use an UTF8 locale) but would be nice to have hints to debug that.
Comment 1•10 years ago
|
||
Apparently, there is an OS-level error, but we fail when attempting to convert the error message to a string. Most likely, the error is thrown from within this call: https://dxr.mozilla.org/mozilla-central/source/toolkit/components/search/nsSearchService.js?from=nsSearchService.js#4894
Could you launch Firefox with option toolkit.osfile.log? This will activate OS.File logging, which might be able to tell us more about the error.
My best guess, so far, is that the profile directory is at a path that contains a non-ascii char, on a non-UTF8 locale, which is something we don't know how to handle on Unix.
| Reporter | ||
Comment 2•10 years ago
|
||
hm there's nothing special to the paths used when finding the profile:
OS Controller Posting message {"fun":"SET_DEBUG","args":[true],"id":1}
OS Controller Message posted
OS Controller Expecting reply
OS Controller Posting message {"fun":"writeAtomic","args":[{"string":"/home/landry/.mozilla/firefox/9i5qnx6q.Nightly/sessio
nCheckpoints.json"},{"string":"{\"profile-after-change\":true,\"final-ui-startup\":true}"},{"tmpPath":{"string":"/home/land
ry/.mozilla/firefox/9i5qnx6q.Nightly/sessionCheckpoints.json.tmp"}}],"id":2}
OS Controller Message posted
OS Controller Expecting reply
OS Controller Received message from worker {"id":1,"timeStamps":{"entered":1428242512607,"loaded":1428242518775}}
OS Controller Received message from worker {"ok":53,"id":2}
OS Controller Posting message {"fun":"exists","args":[{"string":"/home/landry/.cache/mozilla/firefox/9i5qnx6q.Nightly/direc
toryLinks.json"}],"id":3}
OS Controller Message posted
OS Controller Expecting reply
OS Controller Received message from worker {"ok":true,"id":3}
OS Controller Posting message {"fun":"makeDir","args":[{"string":"/home/landry/.mozilla/firefox/9i5qnx6q.Nightly/bookmarkba
ckups"},{"ignoreExisting":true}],"id":4}
OS Controller Message posted
OS Controller Expecting reply
OS Controller Received message from worker {"id":4}
*************************
A coding exception was thrown and uncaught in a Task.
Full message: TypeError: malformed UTF-8 character sequence at offset 12
Full stack: toString@resource://gre/modules/osfile/osfile_unix_allthreads.jsm:92:12
task_init@resource://gre/components/nsSearchService.js:4862:11
The only specific things i have in my env:
LC_CTYPE=fr_FR.ISO8859-15
LC_MESSAGES=fr_FR.ISO8859-15
| Reporter | ||
Comment 3•10 years ago
|
||
But this is related to the locale since LC_ALL=C doesnt show both errors. I dont even have dirs/files in my homedir/profile with accentued/weird chars.
Comment 4•10 years ago
|
||
What happens if you change LC_MESSAGES to C but keep the rest to fr_FR?
| Reporter | ||
Comment 5•10 years ago
|
||
The exception is not shown if i only have LC_CTYPE set to fr_FR.ISO8859-15.. but LC_MESSAGES is used to tell the applications i want messages displayed in french :)
Oh well, locale handling has always been a nightmare.
Updated•3 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•