diff options
author | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-28 16:30:14 +0000 |
---|---|---|
committer | pfeldman@chromium.org <pfeldman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-05-28 16:30:14 +0000 |
commit | e8fcf02200ce501b751419fdd47f940208df99fb (patch) | |
tree | 50983ac843d49c95a89f951dc660edee59a37cd8 | |
parent | 5ca9dbacd478c35c99fdfa33b4cbe7af719eb7d4 (diff) | |
download | chromium_src-e8fcf02200ce501b751419fdd47f940208df99fb.zip chromium_src-e8fcf02200ce501b751419fdd47f940208df99fb.tar.gz chromium_src-e8fcf02200ce501b751419fdd47f940208df99fb.tar.bz2 |
DevTools: Add support for non-trivial console messages.
Review URL: http://codereview.chromium.org/113953
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17074 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | webkit/glue/devtools/js/inject_dispatch.js | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/webkit/glue/devtools/js/inject_dispatch.js b/webkit/glue/devtools/js/inject_dispatch.js index 404779a..81cfc4b 100644 --- a/webkit/glue/devtools/js/inject_dispatch.js +++ b/webkit/glue/devtools/js/inject_dispatch.js @@ -40,10 +40,23 @@ function devtools$$dispatch(functionName, node, json_args) { */ var dispatch = function(method, var_args) { // Handle all messages with non-primitieve arguments here. - // TODO(pfeldman): Add more. if (method == 'inspectedWindowCleared') { return; } - var call = JSON.stringify(Array.prototype.slice.call(arguments)); + var args = Array.prototype.slice.call(arguments); + + // Serialize objects here. + if (method == 'addMessageToConsole') { + // Skip first argument since it is serializable. + for (var i = 1; i < args.length; ++i) { + var type = typeof args[i]; + if (type == 'object') { + args[i] = Object.prototype.toString(args[i]); + } else if (type == 'function') { + args[i] = args[i].toString(); + } + } + } + var call = JSON.stringify(args); RemoteWebInspector.dispatch(call); }; |