Index: chrome/ext/common.js |
diff --git a/chrome/ext/common.js b/chrome/ext/common.js |
index 2e5c776dccb493894383117b12bebafc411587b5..5401aaa2885a234c537d2dcbdd4b1267e04f0660 100644 |
--- a/chrome/ext/common.js |
+++ b/chrome/ext/common.js |
@@ -15,8 +15,17 @@ |
* along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>. |
*/ |
-(function() |
+"use strict"; |
+ |
{ |
+ // Workaround since HTMLCollection and NodeList didn't have iterator support |
+ // before Chrome 51. |
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=401699 |
+ if (!(Symbol.iterator in HTMLCollection.prototype)) |
+ HTMLCollection.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator]; |
+ if (!(Symbol.iterator in NodeList.prototype)) |
+ NodeList.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator]; |
+ |
/* Message passing */ |
ext.onMessage = new ext._EventTarget(); |
@@ -26,7 +35,7 @@ |
ext.backgroundPage = { |
sendMessage: chrome.runtime.sendMessage, |
- getWindow: function() |
+ getWindow() |
{ |
return chrome.extension.getBackgroundPage(); |
} |
@@ -37,4 +46,4 @@ |
ext.getURL = chrome.extension.getURL; |
ext.i18n = chrome.i18n; |
-})(); |
+} |