| Index: chrome/renderer/resources/extensions/event.js
|
| diff --git a/chrome/renderer/resources/extensions/event.js b/chrome/renderer/resources/extensions/event.js
|
| index a69e47428c43ad2515a2f8091be4ea011ab1f3a2..a6d636342eea978f3568208f7345f8b763559306 100644
|
| --- a/chrome/renderer/resources/extensions/event.js
|
| +++ b/chrome/renderer/resources/extensions/event.js
|
| @@ -139,7 +139,12 @@
|
| chromeHidden.Event.dispatchJSON = function(name, args) {
|
| if (attachedNamedEvents[name]) {
|
| if (args) {
|
| - args = chromeHidden.JSON.parse(args);
|
| + // TODO(asargent): This is an antiquity. Until all callers of
|
| + // dispatchJSON use actual values, this must remain here to catch the
|
| + // cases where a caller has hard-coded a JSON string to pass in.
|
| + if (typeof(args) == "string") {
|
| + args = chromeHidden.JSON.parse(args);
|
| + }
|
| if (eventArgumentMassagers[name])
|
| eventArgumentMassagers[name](args);
|
| }
|
|
|