mirror of
https://github.com/classilla/tenfourfox.git
synced 2025-01-15 09:30:20 +00:00
34 lines
1.6 KiB
JavaScript
34 lines
1.6 KiB
JavaScript
// enable crash reporting first
|
|
var cwd = Components.classes["@mozilla.org/file/directory_service;1"]
|
|
.getService(Components.interfaces.nsIProperties)
|
|
.get("CurWorkD", Components.interfaces.nsILocalFile);
|
|
|
|
// get the temp dir
|
|
var env = Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment);
|
|
var _tmpd = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
|
|
_tmpd.initWithPath(env.get("XPCSHELL_TEST_TEMP_DIR"));
|
|
|
|
var crashReporter =
|
|
Components.classes["@mozilla.org/toolkit/crash-reporter;1"]
|
|
.getService(Components.interfaces.nsICrashReporter);
|
|
|
|
// We need to call this or crash events go in an undefined location.
|
|
crashReporter.UpdateCrashEventsDir();
|
|
|
|
// Setting the minidump path is not allowed in content processes
|
|
var processType = Components.classes["@mozilla.org/xre/runtime;1"].
|
|
getService(Components.interfaces.nsIXULRuntime).processType;
|
|
if (processType == Components.interfaces.nsIXULRuntime.PROCESS_TYPE_DEFAULT) {
|
|
crashReporter.minidumpPath = _tmpd;
|
|
}
|
|
|
|
var ios = Components.classes["@mozilla.org/network/io-service;1"]
|
|
.getService(Components.interfaces.nsIIOService);
|
|
var protocolHandler = ios.getProtocolHandler("resource")
|
|
.QueryInterface(Components.interfaces.nsIResProtocolHandler);
|
|
var curDirURI = ios.newFileURI(cwd);
|
|
protocolHandler.setSubstitution("test", curDirURI);
|
|
Components.utils.import("resource://test/CrashTestUtils.jsm");
|
|
var crashType = CrashTestUtils.CRASH_INVALID_POINTER_DEREF;
|
|
var shouldDelay = false;
|