Closed Bug 976241 Opened 6 years ago Closed 6 years ago

Error saving crashes\store.json.mozlz4.tmp due to missing directory

Categories

(Toolkit :: Crash Reporting, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla30

People

(Reporter: capella, Assigned: gps)

References

Details

(Whiteboard: [triage])

Attachments

(1 file)

During general use of Metro (w/ and w/o touchscreen - navigating, clicking links, double clicking text), it's fairly common to observe an error in the console:

    A promise chain failed to handle a rejection.
     
    Date: Mon Feb 24 2014 14:46:48 GMT-0500 (Eastern Standard Time)
    Full Message: Win error 3 during operation open on file:

    C:\Users\master\AppData\Roaming\Mozilla\Firefox\
       Profiles\wtop91ck.Default User Release\crashes\store.json.mozlz4.tmp

    (The system cannot find the path specified.)

    Full Stack: JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 133
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 52
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 208
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_handleException :: line 301
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_run :: line 229
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 133
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 52
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 208
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_handleException :: line 301
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_run :: line 229
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 133
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: then :: line 52
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: resolve :: line 185
    JS frame :: resource://gre/modules/commonjs/sdk/core/promise.js :: reject :: line 208
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_handleException :: line 301
    JS frame :: resource://gre/modules/Task.jsm :: TaskImpl_run :: line 229
    JS frame :: resource://gre/modules/Promise.jsm :: Handler.prototype.process :: line 777
    JS frame :: resource://gre/modules/Promise.jsm :: this.PromiseWalker.walkerLoop :: line 653
    native frame :: <unknown filename> :: <TOP_LEVEL> :: line 0
    0
fyi - \crashes\ is the part of the path that does not exist.
Blocks: metrobacklog
Whiteboard: [triage]
Component: General → Breakpad Integration
Product: Firefox for Metro → Toolkit
Blocks: 875562
No longer blocks: metrobacklog
Does C:\Users\master\AppData\Roaming\Mozilla\Firefox\Profiles\wtop91ck.Default User Release\crashes\ exist?
Flags: needinfo?(markcapella)
It seems we don't create the "crashes" directory anywhere outside of tests.

I sort of remember writing the code to do this as part of service initialization. I, uh, am not sure what happened to those lines.
Pretty basic patch.

The changed test code triggers a run-time failure without the
corresponding makeDir() in the store initialization code path.
Attachment #8385726 - Flags: review?(dteller)
Assignee: nobody → gps
Status: NEW → ASSIGNED
Flags: needinfo?(markcapella)
OS: Windows 8.1 → All
Hardware: x86_64 → All
Summary: Promise chain failure logged to console → Error saving crashes\store.json.mozlz4.tmp due to missing directory
Comment on attachment 8385726 [details] [diff] [review]
Create crash store directory

Review of attachment 8385726 [details] [diff] [review]:
-----------------------------------------------------------------

Looks good.
Attachment #8385726 - Flags: review?(dteller) → review+
https://hg.mozilla.org/mozilla-central/rev/dfb1952434d3
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla30
You need to log in before you can comment on or make changes to this bug.