| Index: chrome/renderer/resources/extensions/permissions_custom_bindings.js | 
| diff --git a/chrome/renderer/resources/extensions/permissions_custom_bindings.js b/chrome/renderer/resources/extensions/permissions_custom_bindings.js | 
| deleted file mode 100644 | 
| index f702dc04d199aaee98618a3304ed3246a810be69..0000000000000000000000000000000000000000 | 
| --- a/chrome/renderer/resources/extensions/permissions_custom_bindings.js | 
| +++ /dev/null | 
| @@ -1,97 +0,0 @@ | 
| -// Copyright (c) 2012 The Chromium Authors. All rights reserved. | 
| -// Use of this source code is governed by a BSD-style license that can be | 
| -// found in the LICENSE file. | 
| - | 
| -// Custom binding for the Permissions API. | 
| - | 
| -var binding = require('binding').Binding.create('permissions'); | 
| - | 
| -var Event = require('event_bindings').Event; | 
| - | 
| -// These custom binding are only necessary because it is not currently | 
| -// possible to have a union of types as the type of the items in an array. | 
| -// Once that is fixed, this entire file should go away. | 
| -// See, | 
| -// https://code.google.com/p/chromium/issues/detail?id=162044 | 
| -// https://code.google.com/p/chromium/issues/detail?id=162042 | 
| -// TODO(bryeung): delete this file. | 
| -binding.registerCustomHook(function(api) { | 
| -  var apiFunctions = api.apiFunctions; | 
| -  var permissions = api.compiledApi; | 
| - | 
| -  function maybeConvertToObject(str) { | 
| -    var parts = $String.split(str, '|'); | 
| -    if (parts.length != 2) | 
| -      return str; | 
| - | 
| -    var ret = {}; | 
| -    ret[parts[0]] = JSON.parse(parts[1]); | 
| -    return ret; | 
| -  } | 
| - | 
| -  function convertObjectPermissionsToStrings() { | 
| -    if (arguments.length < 1) | 
| -      return arguments; | 
| - | 
| -    var args = arguments[0].permissions; | 
| -    if (!args) | 
| -      return arguments; | 
| - | 
| -    for (var i = 0; i < args.length; i += 1) { | 
| -      if (typeof(args[i]) == 'object') { | 
| -        var a = args[i]; | 
| -        var keys = $Object.keys(a); | 
| -        if (keys.length != 1) { | 
| -          throw new Error("Too many keys in object-style permission."); | 
| -        } | 
| -        arguments[0].permissions[i] = keys[0] + '|' + | 
| -            JSON.stringify(a[keys[0]]); | 
| -      } | 
| -    } | 
| - | 
| -    return arguments; | 
| -  } | 
| - | 
| -  // Convert complex permissions to strings so they validate against the schema | 
| -  apiFunctions.setUpdateArgumentsPreValidate( | 
| -      'contains', convertObjectPermissionsToStrings); | 
| -  apiFunctions.setUpdateArgumentsPreValidate( | 
| -      'remove', convertObjectPermissionsToStrings); | 
| -  apiFunctions.setUpdateArgumentsPreValidate( | 
| -      'request', convertObjectPermissionsToStrings); | 
| - | 
| -  // Convert complex permissions back to objects | 
| -  apiFunctions.setCustomCallback('getAll', | 
| -      function(name, request, response) { | 
| -        for (var i = 0; i < response.permissions.length; i += 1) { | 
| -          response.permissions[i] = | 
| -              maybeConvertToObject(response.permissions[i]); | 
| -        } | 
| - | 
| -        // Since the schema says Permissions.permissions contains strings and | 
| -        // not objects, validation will fail after the for-loop above.  This | 
| -        // skips validation and calls the callback directly, then clears it so | 
| -        // that handleResponse doesn't call it again. | 
| -        try { | 
| -          if (request.callback) | 
| -            $Function.apply(request.callback, request, [response]); | 
| -        } finally { | 
| -          delete request.callback; | 
| -        } | 
| -      }); | 
| - | 
| -  // Also convert complex permissions back to objects for events.  The | 
| -  // dispatchToListener call happens after argument validation, which works | 
| -  // around the problem that Permissions.permissions is supposed to be a list | 
| -  // of strings. | 
| -  permissions.onAdded.dispatchToListener = function(callback, args) { | 
| -    for (var i = 0; i < args[0].permissions.length; i += 1) { | 
| -      args[0].permissions[i] = maybeConvertToObject(args[0].permissions[i]); | 
| -    } | 
| -    $Function.call(Event.prototype.dispatchToListener, this, callback, args); | 
| -  }; | 
| -  permissions.onRemoved.dispatchToListener = | 
| -      permissions.onAdded.dispatchToListener; | 
| -}); | 
| - | 
| -exports.binding = binding.generate(); | 
|  |