Backed out changeset 797e8190073f (bug 1265876) for memory leaks in browser_markup_mutation_02.js

This commit is contained in:
Carsten "Tomcat" Book 2016-04-28 08:13:42 +02:00
Родитель e84bbc704a
Коммит bba206d411
26 изменённых файлов: 39 добавлений и 28 удалений

Просмотреть файл

@ -8,8 +8,6 @@
"Cc": true,
"Ci": true,
"Components": true,
"clearInterval": true,
"clearTimeout": true,
"console": true,
"Cr": true,
"Cu": true,
@ -22,8 +20,6 @@
"module": true,
"reportError": true,
"require": true,
"setInterval": true,
"setTimeout": true,
"Services": true,
"Task": true,
"XPCNativeWrapper": true,

Просмотреть файл

@ -8,6 +8,7 @@ const Telemetry = require("devtools/client/shared/telemetry");
const {EventEmitter} = Cu.import("resource://devtools/shared/event-emitter.js");
const promise = require("promise");
const Services = require("Services");
const {setTimeout, clearTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {});
loader.lazyGetter(this, "clipboardHelper", function() {
return Cc["@mozilla.org/widget/clipboardhelper;1"]

Просмотреть файл

@ -15,6 +15,7 @@ const {CssLogic} = require("devtools/shared/inspector/css-logic");
const {ELEMENT_STYLE} = require("devtools/server/actors/styles");
const promise = require("promise");
const Services = require("Services");
const {setTimeout, clearTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {});
const {OutputParser} = require("devtools/client/shared/output-parser");
const {PrefObserver, PREF_ORIG_SOURCES} = require("devtools/client/styleeditor/utils");
const {createChild} = require("devtools/client/inspector/shared/utils");

Просмотреть файл

@ -7,6 +7,8 @@
"use strict";
const {Cu} = require("chrome");
const {setTimeout, clearTimeout} =
Cu.import("resource://gre/modules/Timer.jsm", {});
const {gDevTools} = require("devtools/client/framework/devtools");
const Services = require("Services");

Просмотреть файл

@ -32,6 +32,8 @@ const Services = require("Services");
const {Tooltip} = require("devtools/client/shared/widgets/Tooltip");
const EventEmitter = require("devtools/shared/event-emitter");
const Heritage = require("sdk/core/heritage");
const {setTimeout, clearTimeout, setInterval, clearInterval} =
require("sdk/timers");
const {parseAttribute} =
require("devtools/client/shared/node-attribute-parser");
const ELLIPSIS = Services.prefs.getComplexValue("intl.ellipsis",

Просмотреть файл

@ -11,6 +11,8 @@ const {Cc, Ci, Cu} = require("chrome");
const promise = require("promise");
const Services = require("Services");
const {Tools} = require("devtools/client/definitions");
const {setTimeout, clearTimeout} =
Cu.import("resource://gre/modules/Timer.jsm", {});
const {CssLogic} = require("devtools/shared/inspector/css-logic");
const {ELEMENT_STYLE} = require("devtools/server/actors/styles");
const {OutputParser} = require("devtools/client/shared/output-parser");

Просмотреть файл

@ -4,7 +4,7 @@
"use strict";
const {Cc, Ci} = require("chrome");
const {Cc, Ci, Cu} = require("chrome");
const {CssLogic} = require("devtools/shared/inspector/css-logic");
const {InplaceEditor, editableField} =
require("devtools/client/shared/inplace-editor");
@ -19,6 +19,7 @@ const {
parseDeclarations,
parseSingleValue,
} = require("devtools/client/shared/css-parsing-utils");
const {setTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {});
const HTML_NS = "http://www.w3.org/1999/xhtml";
const IOService = Cc["@mozilla.org/network/io-service;1"]

Просмотреть файл

@ -6,7 +6,9 @@
"use strict";
const {Ci} = require("chrome");
const {Ci, Cu} = require("chrome");
const {setTimeout, clearTimeout} =
Cu.import("resource://gre/modules/Timer.jsm", {});
const {parseDeclarations} =
require("devtools/client/shared/css-parsing-utils");
const promise = require("promise");

Просмотреть файл

@ -3,6 +3,7 @@
* You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
const { clearTimeout, setTimeout } = require("sdk/timers");
const { actions } = require("../constants");
const { refresh } = require("./refresh");

Просмотреть файл

@ -5,6 +5,7 @@
const { Cu } = require("chrome");
const { defer, all } = require("promise");
const { setTimeout, clearTimeout } = require("sdk/timers");
const { makeInfallible } = require("devtools/shared/DevToolsUtils");
const Services = require("Services");

Просмотреть файл

@ -14,6 +14,7 @@ const promise = require("promise");
const Services = require("Services");
const { on, forget } = require("devtools/client/projecteditor/lib/helpers/event");
const { FileResource } = require("devtools/client/projecteditor/lib/stores/resource");
const {setTimeout, clearTimeout} = Cu.import("resource://gre/modules/Timer.jsm", {});
const CHECK_LINKED_DIRECTORY_DELAY = 5000;
const SHOULD_LIVE_REFRESH = true;

Просмотреть файл

@ -9,6 +9,7 @@ const Services = require("Services");
const { DOMHelpers } = require("resource://devtools/client/shared/DOMHelpers.jsm");
const { Task } = require("resource://gre/modules/Task.jsm");
const { Promise } = require("resource://gre/modules/Promise.jsm");
const { setTimeout } = require("sdk/timers");
const { getMostRecentBrowserWindow } = require("sdk/window/utils");
const XULNS = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul";

Просмотреть файл

@ -3,6 +3,8 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
"use strict";
loader.lazyRequireGetter(this, "timers",
"resource://gre/modules/Timer.jsm");
loader.lazyRequireGetter(this, "defer",
"promise", true);
@ -65,7 +67,7 @@ Poller.prototype.on = function pollerOn () {
Poller.prototype.off = function pollerOff () {
let { resolve, promise } = defer();
if (this._timer) {
clearTimeout(this._timer);
timers.clearTimeout(this._timer);
this._timer = null;
}
@ -91,7 +93,7 @@ Poller.prototype.destroy = function pollerDestroy () {
};
Poller.prototype._preparePoll = function pollerPrepare () {
this._timer = setTimeout(this._poll, this._wait);
this._timer = timers.setTimeout(this._poll, this._wait);
};
Poller.prototype._poll = function pollerPoll () {

Просмотреть файл

@ -26,6 +26,7 @@
"use strict";
const EventEmitter = require("devtools/shared/event-emitter");
const {setTimeout, clearTimeout} = require("sdk/timers");
const {
PREDEFINED,
PRESETS,

Просмотреть файл

@ -30,6 +30,7 @@ loader.lazyRequireGetter(this, "Messages", "devtools/client/webconsole/console-o
loader.lazyRequireGetter(this, "EnvironmentClient", "devtools/shared/client/main", true);
loader.lazyRequireGetter(this, "ObjectClient", "devtools/shared/client/main", true);
loader.lazyRequireGetter(this, "system", "devtools/shared/system");
loader.lazyRequireGetter(this, "Timers", "sdk/timers");
loader.lazyRequireGetter(this, "JSTerm", "devtools/client/webconsole/jsterm", true);
loader.lazyRequireGetter(this, "gSequenceId", "devtools/client/webconsole/jsterm", true);
loader.lazyImporter(this, "VariablesView", "resource://devtools/client/shared/widgets/VariablesView.jsm");
@ -976,10 +977,10 @@ WebConsoleFrame.prototype = {
Services.prefs.setBoolPref(this._filterPrefsPrefix + toggleType, state);
if (this._updateListenersTimeout) {
clearTimeout(this._updateListenersTimeout);
Timers.clearTimeout(this._updateListenersTimeout);
}
this._updateListenersTimeout = setTimeout(
this._updateListenersTimeout = Timers.setTimeout(
this._onUpdateListeners, 200);
},

Просмотреть файл

@ -18,6 +18,7 @@ const {AppActorFront} = require("devtools/shared/apps/app-actor-front");
const {getDeviceFront} = require("devtools/server/actors/device");
const {getPreferenceFront} = require("devtools/server/actors/preference");
const {getSettingsFront} = require("devtools/server/actors/settings");
const {setTimeout} = require("sdk/timers");
const {Task} = Cu.import("resource://gre/modules/Task.jsm", {});
const {RuntimeScanners, RuntimeTypes} = require("devtools/client/webide/modules/runtimes");
const {NetUtil} = Cu.import("resource://gre/modules/NetUtil.jsm", {});

Просмотреть файл

@ -30,6 +30,7 @@ const protocol = require("devtools/server/protocol");
const {method, Arg} = protocol;
const events = require("sdk/event/core");
const Heritage = require("sdk/core/heritage");
const {setTimeout, clearTimeout} = require("sdk/timers");
const EventEmitter = require("devtools/shared/event-emitter");
/**

Просмотреть файл

@ -7,6 +7,7 @@ const {Ci,Cu,Cc} = require("chrome");
Cu.import("resource://gre/modules/XPCOMUtils.jsm");
const Services = require("Services");
var {setTimeout,clearTimeout} = require("sdk/timers");
function MonitorActor(aConnection) {
this.conn = aConnection;

Просмотреть файл

@ -34,7 +34,7 @@ loader.lazyGetter(this, "Debugger", () => {
});
loader.lazyRequireGetter(this, "CssLogic", "devtools/shared/inspector/css-logic", true);
loader.lazyRequireGetter(this, "events", "sdk/event/core");
loader.lazyRequireGetter(this, "mapURIToAddonID", "devtools/server/actors/utils/map-uri-to-addon-id");
loader.lazyRequireGetter(this, "setTimeout", "sdk/timers", true);
/**
* A BreakpointActorMap is a map from locations to instances of BreakpointActor.

Просмотреть файл

@ -13,6 +13,7 @@ const {DebuggerServer} = require("devtools/server/main");
const Services = require("Services");
const promise = require("promise");
const {isWindowIncluded} = require("devtools/shared/layout/utils");
const {setTimeout, clearTimeout} = require("sdk/timers");
loader.lazyImporter(this, "OS", "resource://gre/modules/osfile.jsm");
loader.lazyImporter(this, "Sqlite", "resource://gre/modules/Sqlite.jsm");

Просмотреть файл

@ -25,6 +25,7 @@ const { Class } = require("sdk/core/heritage");
// Be aggressive about lazy loading, as this will run on every
// toolbox startup
loader.lazyRequireGetter(this, "events", "sdk/event/core");
loader.lazyRequireGetter(this, "Timers", "sdk/timers");
loader.lazyRequireGetter(this, "Task", "resource://gre/modules/Task.jsm", true);
loader.lazyRequireGetter(this, "Memory", "devtools/server/performance/memory", true);
loader.lazyRequireGetter(this, "Framerate", "devtools/server/performance/framerate", true);
@ -173,7 +174,7 @@ var Timeline = exports.Timeline = Class({
}
}
this._dataPullTimeout = setTimeout(() => {
this._dataPullTimeout = Timers.setTimeout(() => {
this._pullTimelineData();
}, DEFAULT_TIMELINE_DATA_PULL_TIMEOUT);
},
@ -307,7 +308,7 @@ var Timeline = exports.Timeline = Class({
this._withDocLoadingEvents = false;
this._withGCEvents = false;
clearTimeout(this._dataPullTimeout);
Timers.clearTimeout(this._dataPullTimeout);
return endTime;
}),

Просмотреть файл

@ -12,6 +12,7 @@ var promise = require("promise");
loader.lazyRequireGetter(this, "FileUtils",
"resource://gre/modules/FileUtils.jsm", true);
loader.lazyRequireGetter(this, "setTimeout", "Timer", true);
// Re-export the thread-safe utils.
const ThreadSafeDevToolsUtils = require("./ThreadSafeDevToolsUtils.js");

Просмотреть файл

@ -280,24 +280,10 @@ DevToolsLoader.prototype = {
factory(this.require, this.exports, this.module);
},
};
// Lazily define a few things so that the corresponding jsms are
// only loaded when used.
// Lazy define console in order to load Console.jsm only when it is used
XPCOMUtils.defineLazyGetter(this._provider.globals, "console", () => {
return Cu.import("resource://gre/modules/Console.jsm", {}).console;
});
XPCOMUtils.defineLazyGetter(this._provider.globals, "clearTimeout", () => {
return Cu.import("resource://gre/modules/Timer.jsm", {}).clearTimeout;
});
XPCOMUtils.defineLazyGetter(this._provider.globals, "setTimeout", () => {
return Cu.import("resource://gre/modules/Timer.jsm", {}).setTimeout;
});
XPCOMUtils.defineLazyGetter(this._provider.globals, "clearInterval", () => {
return Cu.import("resource://gre/modules/Timer.jsm", {}).clearInterval;
});
XPCOMUtils.defineLazyGetter(this._provider.globals, "setInterval", () => {
return Cu.import("resource://gre/modules/Timer.jsm", {}).setInterval;
});
this._provider.load();
this.require = Loader.Require(this._provider.loader, { id: "devtools" });

Просмотреть файл

@ -7,6 +7,7 @@
"use strict";
const {Cc, Ci, Cu, Cr} = require("chrome");
const {setTimeout, clearTimeout} = require('sdk/timers');
const EventEmitter = require("devtools/shared/event-emitter");
const DevToolsUtils = require("devtools/shared/DevToolsUtils");
const { DebuggerServer } = require("devtools/server/main");

Просмотреть файл

@ -33,6 +33,7 @@
const { Cu, CC, Cc, Ci } = require("chrome");
const EventEmitter = require("devtools/shared/event-emitter");
const { setTimeout, clearTimeout } = require("sdk/timers");
const Services = require("Services");
const UDPSocket = CC("@mozilla.org/network/udp-socket;1",

Просмотреть файл

@ -27,6 +27,8 @@ loader.lazyRequireGetter(this, "Authenticators",
"devtools/shared/security/auth", true);
loader.lazyRequireGetter(this, "AuthenticationResult",
"devtools/shared/security/auth", true);
loader.lazyRequireGetter(this, "setTimeout", "Timer", true);
loader.lazyRequireGetter(this, "clearTimeout", "Timer", true);
DevToolsUtils.defineLazyGetter(this, "nsFile", () => {
return CC("@mozilla.org/file/local;1", "nsIFile", "initWithPath");