Index: chrome/renderer/resources/extensions/content_setting.js |
diff --git a/chrome/renderer/resources/extensions/content_setting.js b/chrome/renderer/resources/extensions/content_setting.js |
index 98fb95a890bd98aa23bf4d7026a8176b098b8b66..ef504648b2e567d65909b9236f3309107e2a8d30 100644 |
--- a/chrome/renderer/resources/extensions/content_setting.js |
+++ b/chrome/renderer/resources/extensions/content_setting.js |
@@ -9,7 +9,7 @@ |
function extendSchema(schema) { |
var extendedSchema = $Array.slice(schema); |
- $Array.unshift(extendedSchema, {'type': 'string'}); |
+ extendedSchema.unshift({'type': 'string'}); |
return extendedSchema; |
} |
@@ -22,24 +22,13 @@ |
extendSchema(getSchema)); |
}; |
this.set = function(details, callback) { |
- // The set schema included in the Schema object is generic, since it varies |
- // per-setting. However, this is only ever for a single setting, so we can |
- // enforce the types more thoroughly. |
- var rawSetSchema = this.functionSchemas.set.definition.parameters; |
- var rawSettingParam = rawSetSchema[0]; |
- var props = $Object.assign({}, rawSettingParam.properties); |
- props.setting = settingSchema; |
- var modSettingParam = { |
- name: rawSettingParam.name, |
- type: rawSettingParam.type, |
- properties: props, |
- }; |
- var modSetSchema = $Array.slice(rawSetSchema); |
- modSetSchema[0] = modSettingParam; |
- validate([details, callback], rawSetSchema); |
+ var setSchema = $Array.slice( |
+ this.functionSchemas.set.definition.parameters); |
+ setSchema[0].properties.setting = settingSchema; |
+ validate([details, callback], setSchema); |
return sendRequest('contentSettings.set', |
[contentType, details, callback], |
- extendSchema(modSetSchema)); |
+ extendSchema(setSchema)); |
}; |
this.clear = function(details, callback) { |
var clearSchema = this.functionSchemas.clear.definition.parameters; |