Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

issue6257: simplify Console.getDefaultReturnValue()

  • Loading branch information...
commit 007f999420242ee9c6b0b619c69ec6f982c90380 1 parent 2ac6f1b
@fflorent fflorent authored
View
3  extension/content/firebug/console/commandLine.js
@@ -118,8 +118,7 @@ Firebug.CommandLine = Obj.extend(Firebug.Module,
"and returned: "+ result, result);
}
- var ignoreReturnValue = Console.getDefaultReturnValue(win);
- if (result === ignoreReturnValue)
+ if (Console.isDefaultReturnValue(result))
return;
successConsoleFunction(result, context);
View
28 extension/content/firebug/console/commandLineAPI.js
@@ -142,21 +142,21 @@ CommandLineAPI.getCommandLineAPI = function(context)
var format = Locale.$STR("commandline.CurrentWindow") + " %o";
Firebug.Console.logFormatted([format, context.baseWindow], context, "info");
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
// no web page interaction
commands.clear = function()
{
Firebug.Console.clear(context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
// no web page interaction
commands.inspect = function(obj, panelName)
{
Firebug.chrome.select(obj, panelName);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.keys = function(o)
@@ -174,25 +174,25 @@ CommandLineAPI.getCommandLineAPI = function(context)
commands.debug = function(fn)
{
Firebug.Debugger.monitorFunction(fn, "debug");
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.undebug = function(fn)
{
Firebug.Debugger.unmonitorFunction(fn, "debug");
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.monitor = function(fn)
{
Firebug.Debugger.monitorFunction(fn, "monitor");
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.unmonitor = function(fn)
{
Firebug.Debugger.unmonitorFunction(fn, "monitor");
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.traceAll = function()
@@ -200,7 +200,7 @@ CommandLineAPI.getCommandLineAPI = function(context)
// See issue 6220
Firebug.Console.log(Locale.$STR("commandline.MethodDisabled"));
//Firebug.Debugger.traceAll(Firebug.currentContext);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.untraceAll = function()
@@ -208,7 +208,7 @@ CommandLineAPI.getCommandLineAPI = function(context)
// See issue 6220
Firebug.Console.log(Locale.$STR("commandline.MethodDisabled"));
//Firebug.Debugger.untraceAll(Firebug.currentContext);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.traceCalls = function(/*fn*/)
@@ -216,7 +216,7 @@ CommandLineAPI.getCommandLineAPI = function(context)
// See issue 6220
Firebug.Console.log(Locale.$STR("commandline.MethodDisabled"));
//Firebug.Debugger.traceCalls(Firebug.currentContext, fn);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.untraceCalls = function(/*fn*/)
@@ -224,26 +224,26 @@ CommandLineAPI.getCommandLineAPI = function(context)
// See issue 6220
Firebug.Console.log(Locale.$STR("commandline.MethodDisabled"));
//Firebug.Debugger.untraceCalls(Firebug.currentContext, fn);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.copy = function(x)
{
System.copyToClipboard(x);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
// xxxHonza: removed from 1.10 (issue 5599)
/*commands.memoryProfile = function(title)
{
Firebug.MemoryProfiler.start(context, title);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
commands.memoryProfileEnd = function()
{
Firebug.MemoryProfiler.stop(context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};*/
return commands;
View
2  extension/content/firebug/console/commandLineHelp.js
@@ -296,7 +296,7 @@ var CommandLineHelp = domplate(
function onExecuteCommand(context)
{
CommandLineHelp.render(context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
}
// ********************************************************************************************* //
View
4 extension/content/firebug/console/commandLineInclude.js
@@ -102,7 +102,7 @@ var CommandLineIncludeRep = domplate(FirebugReps.Table,
var store = CommandLineInclude.getStore();
var keys = store.getKeys();
var arrayToDisplay = [];
- var returnValue = Firebug.Console.getDefaultReturnValue(context.window);
+ var returnValue = Firebug.Console.getDefaultReturnValue();
if (keys.length === 0)
{
@@ -386,7 +386,7 @@ var CommandLineInclude = Obj.extend(Firebug.Module,
{
var reNotAlias = /[\.\/]/;
var urlIsAlias = url !== null && !reNotAlias.test(url);
- var returnValue = Firebug.Console.getDefaultReturnValue(context.window);
+ var returnValue = Firebug.Console.getDefaultReturnValue();
// checking arguments:
if ((newAlias !== undefined && typeof newAlias !== "string") || newAlias === "")
View
53 extension/content/firebug/console/console.js
@@ -29,6 +29,9 @@ const Ci = Components.interfaces;
var maxQueueRequests = 500;
+// Note: createDefaultReturnValueInstance() is a local helper (see below).
+var defaultReturnValue = createDefaultReturnValueInstance();
+
// ********************************************************************************************* //
Firebug.ConsoleBase =
@@ -444,22 +447,26 @@ Firebug.Console = Obj.extend(ActivableConsole,
},
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
-
- getDefaultReturnValue: function(win)
+ /**
+ * Returns the value that the console must ignore.
+ *
+ * @return {*} The default value
+ */
+ getDefaultReturnValue: function()
{
- var defaultValue = "_firebugIgnore";
- var console = win.wrappedJSObject.console;
- if (!console)
- return defaultValue;
-
- if (Obj.isNonNativeGetter(console, "__returnValue__"))
- return defaultValue;
-
- var returnValue = console.__returnValue__;
- if (returnValue)
- return returnValue;
+ return defaultReturnValue;
+ },
- return defaultValue;
+ /**
+ * Returns true if the passed object has to be ignored by the console.
+ *
+ * @param {*} o The object to test
+ *
+ * @return {boolean} The result of the test
+ */
+ isDefaultReturnValue: function(obj)
+ {
+ return obj === defaultReturnValue;
}
});
@@ -485,6 +492,24 @@ var appendCollapsedGroup = Firebug.ConsolePanel.prototype.appendCollapsedGroup;
var appendCloseGroup = Firebug.ConsolePanel.prototype.appendCloseGroup;
// ********************************************************************************************* //
+// Local Helpers
+
+function createDefaultReturnValueInstance()
+{
+ var proto = {
+ __exposedProps__: {
+ "toString": "rw"
+ },
+ toString: function()
+ {
+ return undefined;
+ }
+ };
+
+ return Object.preventExtensions(Object.create(proto));
+}
+
+// ********************************************************************************************* //
// Registration
Firebug.registerActivableModule(Firebug.Console);
View
40 extension/content/firebug/console/consoleExposed.js
@@ -70,13 +70,13 @@ function createFirebugConsole(context, win)
return logAssert("assert", rest);
}
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.dir = function dir(o)
{
Firebug.Console.log(o, context, "dir", Firebug.DOMPanel.DirTable);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.dirxml = function dirxml(o)
@@ -87,7 +87,7 @@ function createFirebugConsole(context, win)
o = o.documentElement;
Firebug.Console.log(o, context, "dirxml", Firebug.HTMLPanel.SoloElement);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.trace = function firebugDebuggerTracer()
@@ -97,20 +97,20 @@ function createFirebugConsole(context, win)
debugger;
delete unwrapped.top._firebugStackTrace;
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.group = function group()
{
var sourceLink = getStackLink();
Firebug.Console.openGroup(arguments, null, "group", null, false, sourceLink);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.groupEnd = function()
{
Firebug.Console.closeGroup(context);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.groupCollapsed = function()
@@ -123,19 +123,19 @@ function createFirebugConsole(context, win)
// Use rather a different method that causes auto collapsing of the group
// when it's created.
Firebug.Console.openCollapsedGroup(arguments, null, "group", null, false, sourceLink);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.profile = function(title)
{
Firebug.Profiler.startProfiling(context, title);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.profileEnd = function()
{
Firebug.Profiler.stopProfiling(context);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.count = function(key)
@@ -166,19 +166,19 @@ function createFirebugConsole(context, win)
frameCounter.logRow.firstChild.firstChild.nodeValue = label;
}
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.clear = function()
{
Firebug.Console.clear(context);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.time = function(name, reset)
{
if (!name)
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
var time = new Date().getTime();
@@ -188,10 +188,10 @@ function createFirebugConsole(context, win)
var key = "KEY"+name.toString();
if (!reset && this.timeCounters[key])
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
this.timeCounters[key] = time;
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.timeEnd = function(name)
@@ -200,7 +200,7 @@ function createFirebugConsole(context, win)
var diff = undefined;
if (!this.timeCounters)
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
var key = "KEY"+name.toString();
@@ -235,7 +235,7 @@ function createFirebugConsole(context, win)
console.table = function(data, columns)
{
FirebugReps.Table.log(data, columns, context);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.error = function error()
@@ -256,13 +256,13 @@ function createFirebugConsole(context, win)
/*console.memoryProfile = function(title)
{
Firebug.MemoryProfiler.start(context, title);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
console.memoryProfileEnd = function()
{
Firebug.MemoryProfiler.stop(context);
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};*/
// Expose only these properties to the content scope (read only).
@@ -310,7 +310,7 @@ function createFirebugConsole(context, win)
if (!sourceLink)
sourceLink = linkToSource ? getStackLink() : null;
- var ignoreReturnValue = Firebug.Console.getDefaultReturnValue(win);
+ var ignoreReturnValue = Firebug.Console.getDefaultReturnValue();
var rc = Firebug.Console.logFormatted(args, context, className, noThrottle, sourceLink);
return rc ? rc : ignoreReturnValue;
};
@@ -371,7 +371,7 @@ function createFirebugConsole(context, win)
if (row)
row.scrollIntoView();
- return Console.getDefaultReturnValue(win);
+ return Console.getDefaultReturnValue();
};
function getComponentsStackDump()
View
4 extension/content/firebug/console/eventMonitor.js
@@ -376,7 +376,7 @@ function monitorEvents(context, args)
var types = args[1];
EventMonitor.monitorEvents(object, types, context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
}
function unmonitorEvents(context, args)
@@ -385,7 +385,7 @@ function unmonitorEvents(context, args)
var types = args[1];
EventMonitor.unmonitorEvents(object, types, context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
}
// ********************************************************************************************* //
View
2  extension/content/firebug/console/performanceTiming.js
@@ -394,7 +394,7 @@ function performanceTiming(context, timing)
DetailsEntry.tag.insertRows({timings: timings}, tBody);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
}
// ********************************************************************************************* //
View
4 extension/content/firebug/console/profiler.js
@@ -519,13 +519,13 @@ function profile(context, args)
{
var title = args[0];
Firebug.Profiler.startProfiling(context, title);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
function profileEnd(context)
{
Firebug.Profiler.stopProfiling(context);
- return Firebug.Console.getDefaultReturnValue(context.window);
+ return Firebug.Console.getDefaultReturnValue();
};
// ********************************************************************************************* //
Please sign in to comment.
Something went wrong with that request. Please try again.