Bug 889076 - Use the profile dir to store minidumps in the crashreporter xpcshell tests. r=ted

This commit is contained in:
Mihnea Dobrescu-Balaur 2013-07-10 14:10:04 -07:00
parent df2fb2fcd3
commit 43b04451f2
3 changed files with 11 additions and 6 deletions

View File

@ -87,7 +87,7 @@ try { // nsIXULRuntime is not available in some configurations.
Components.classes["@mozilla.org/toolkit/crash-reporter;1"]
.getService(Components.interfaces.nsICrashReporter)) {
crashReporter.enabled = true;
crashReporter.minidumpPath = do_get_cwd();
crashReporter.minidumpPath = do_get_tempdir();
}
}
}

View File

@ -3,6 +3,11 @@ let cwd = Components.classes["@mozilla.org/file/directory_service;1"]
.getService(Components.interfaces.nsIProperties)
.get("CurWorkD", Components.interfaces.nsILocalFile);
// get the temp dir
let env = Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment);
let _tmpd = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
_tmpd.initWithPath(env.get("XPCSHELL_TEST_TEMP_DIR"));
let crashReporter =
Components.classes["@mozilla.org/toolkit/crash-reporter;1"]
.getService(Components.interfaces.nsICrashReporter);
@ -13,7 +18,7 @@ let processType = Components.classes["@mozilla.org/xre/runtime;1"].
getService(Components.interfaces.nsIXULRuntime).processType;
if (processType == Components.interfaces.nsIXULRuntime.PROCESS_TYPE_DEFAULT) {
crashReporter.enabled = true;
crashReporter.minidumpPath = cwd;
crashReporter.minidumpPath = _tmpd;
}
let ios = Components.classes["@mozilla.org/network/io-service;1"]

View File

@ -72,7 +72,7 @@ function handleMinidump(callback)
{
// find minidump
let minidump = null;
let en = do_get_cwd().directoryEntries;
let en = do_get_tempdir().directoryEntries;
while (en.hasMoreElements()) {
let f = en.getNext().QueryInterface(Components.interfaces.nsILocalFile);
if (f.leafName.substr(-4) == ".dmp") {
@ -116,7 +116,7 @@ function do_content_crash(setup, callback)
let crashReporter =
Components.classes["@mozilla.org/toolkit/crash-reporter;1"]
.getService(Components.interfaces.nsICrashReporter);
crashReporter.minidumpPath = do_get_cwd();
crashReporter.minidumpPath = do_get_tempdir();
let headfile = do_get_file("../unit/crasher_subprocess_head.js");
let tailfile = do_get_file("../unit/crasher_subprocess_tail.js");
@ -127,14 +127,14 @@ function do_content_crash(setup, callback)
}
let handleCrash = function() {
try {
try {
handleMinidump(callback);
} catch (x) {
do_report_unexpected_exception(x);
}
do_test_finished();
};
sendCommand("load(\"" + headfile.path.replace(/\\/g, "/") + "\");", function()
sendCommand(setup, function()
sendCommand("load(\"" + tailfile.path.replace(/\\/g, "/") + "\");",