Bug 1002456 - Fix debugger server breakage;r=jimb

This commit is contained in:
Eddy Bruel 2014-05-07 02:36:18 +02:00
parent eef4227d00
commit f8ee4edca0

View File

@ -14,7 +14,7 @@ const { DebuggerServer } = require("devtools/server/main");
const DevToolsUtils = require("devtools/toolkit/DevToolsUtils");
const { dbg_assert, dumpn, update } = DevToolsUtils;
const { SourceMapConsumer, SourceMapGenerator } = require("source-map");
const { all, defer, resolve } = promise;
const { defer, resolve, reject, all } = require("devtools/toolkit/deprecated-sync-thenables");
Cu.import("resource://gre/modules/NetUtil.jsm");
@ -37,7 +37,7 @@ let addonManager = null;
* about them.
*/
function mapURIToAddonID(uri, id) {
if (Services.appinfo.ID == B2G_ID) {
if ((Services.appinfo.ID || undefined) == B2G_ID) {
return false;
}
@ -3041,6 +3041,7 @@ let stringifiers = {
*/
function ObjectActor(aObj, aThreadActor)
{
dbg_assert(!aObj.optimizedOut, "Should not create object actors for optimized out values!");
this.obj = aObj;
this.threadActor = aThreadActor;
}
@ -4552,10 +4553,16 @@ EnvironmentActor.prototype = {
}
for each (let name in parameterNames) {
let arg = {};
let value = this.obj.getVariable(name);
if (value && value.optimizedOut) {
continue;
}
// TODO: this part should be removed in favor of the commented-out part
// below when getVariableDescriptor lands (bug 725815).
let desc = {
value: this.obj.getVariable(name),
value: value,
configurable: false,
writable: true,
enumerable: true
@ -4584,15 +4591,12 @@ EnvironmentActor.prototype = {
continue;
}
// TODO: this part should be removed in favor of the commented-out part
// below when getVariableDescriptor lands.
let desc = {
configurable: false,
writable: true,
enumerable: true
};
let value;
try {
desc.value = this.obj.getVariable(name);
value = this.obj.getVariable(name);
if (value && value.optimizedOut) {
continue;
}
} catch (e) {
// Avoid "Debugger scope is not live" errors for |arguments|, introduced
// in bug 746601.
@ -4600,6 +4604,16 @@ EnvironmentActor.prototype = {
throw e;
}
}
// TODO: this part should be removed in favor of the commented-out part
// below when getVariableDescriptor lands.
let desc = {
value: value,
configurable: false,
writable: true,
enumerable: true
};
//let desc = this.obj.getVariableDescriptor(name);
let descForm = {
enumerable: true,