[Pkg-mozext-commits] [noscript] 01/05: Imported Upstream version 2.6.9.27

David Prévot taffit at moszumanska.debian.org
Thu Jun 18 23:11:14 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository noscript.

commit 1f4415edf21cc23c788d31e15fe5c500fb8b53c8
Author: David Prévot <david at tilapin.org>
Date:   Thu Jun 18 15:27:25 2015 -0400

    Imported Upstream version 2.6.9.27
---
 META-INF/manifest.mf                               |  42 ---
 META-INF/mozilla.rsa                               | Bin 4196 -> 0 bytes
 META-INF/mozilla.sf                                |   4 -
 chrome/noscript.jar!/content/noscript/DNS.js       |   5 +-
 chrome/noscript.jar!/content/noscript/Lang.js      |   4 +-
 chrome/noscript.jar!/content/noscript/Policy.js    | 354 ++++++++++-----------
 chrome/noscript.jar!/content/noscript/about.xul    |   6 +-
 .../content/noscript/noscriptOverlay.js            |   2 +-
 .../locale/be-BY/noscript/about.properties         |  16 +-
 .../locale/bg-BG/noscript/noscript.dtd             |   2 +-
 .../locale/ca-AD/noscript/noscript.dtd             |   2 +-
 .../locale/cs-CZ/noscript/noscript.dtd             |   2 +-
 .../locale/cy-GB/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/da/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/de/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/el/noscript/noscript.dtd  |   2 +-
 .../locale/en-GB/noscript/noscript.dtd             |   2 +-
 .../locale/en-US/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/eo/noscript/noscript.dtd  |   2 +-
 .../locale/es-AR/noscript/noscript.dtd             |   2 +-
 .../locale/es-CL/noscript/noscript.dtd             |   2 +-
 .../locale/es-ES/noscript/noscript.dtd             |   2 +-
 .../locale/et-EE/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/eu/noscript/noscript.dtd  |   2 +-
 .../locale/fa-IR/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/fi/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/fr/noscript/noscript.dtd  |   2 +-
 .../locale/gl-ES/noscript/noscript.dtd             |   2 +-
 .../locale/he-IL/noscript/noscript.dtd             |   2 +-
 .../locale/hr-HR/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/hsb/noscript/noscript.dtd |   2 +-
 .../locale/hu-HU/noscript/noscript.dtd             |   2 +-
 .../locale/id-ID/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/it/noscript/noscript.dtd  |   2 +-
 .../locale/ja-JP/noscript/noscript.dtd             |   2 +-
 .../locale/kk-KZ/noscript/noscript.dtd             |   2 +-
 .../locale/km-KH/noscript/noscript.dtd             |   2 +-
 .../locale/ko-KR/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/lt/noscript/noscript.dtd  |   2 +-
 .../locale/mk-MK/noscript/noscript.dtd             |   2 +-
 .../locale/ms-MY/noscript/noscript.dtd             |   2 +-
 .../locale/nb-NO/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/nl/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/pl/noscript/noscript.dtd  |   2 +-
 .../locale/pt-BR/noscript/noscript.dtd             |   2 +-
 .../locale/pt-PT/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/ro/noscript/noscript.dtd  |   2 +-
 .../locale/sk-SK/noscript/noscript.dtd             |   2 +-
 .../locale/sl-SI/noscript/noscript.dtd             |   2 +-
 .../locale/sr-RS/noscript/noscript.dtd             |   2 +-
 .../locale/sv-SE/noscript/noscript.dtd             |   2 +-
 .../locale/te-IN/noscript/noscript.dtd             |   2 +-
 .../noscript.jar!/locale/th/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/tr/noscript/noscript.dtd  |   2 +-
 .../noscript.jar!/locale/vi/noscript/noscript.dtd  |   2 +-
 .../locale/zh-CN/noscript/noscript.dtd             |   2 +-
 .../locale/zh-TW/noscript/noscript.dtd             |   2 +-
 components/noscriptService.js                      |  28 +-
 defaults/preferences/noscript.js                   |   3 +-
 install.rdf                                        |   2 +-
 60 files changed, 265 insertions(+), 297 deletions(-)

diff --git a/META-INF/manifest.mf b/META-INF/manifest.mf
deleted file mode 100644
index 215d180..0000000
--- a/META-INF/manifest.mf
+++ /dev/null
@@ -1,42 +0,0 @@
-Manifest-Version: 1.0
-
-Name: install.rdf
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: BAmpAT72WJeCngD0a500jQ==
-SHA1-Digest: KwqUal6OcQy/YWcsZhi8HW0q1lk=
-
-Name: chrome.manifest
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: ZVyhJVfGhrNs/GewLvbBeg==
-SHA1-Digest: jnO5QkpHGECCjBYP8ObGcSwMzKk=
-
-Name: GPL.txt
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: Xc3+JfIRGapUNeq50CVq9w==
-SHA1-Digest: QuhZ5zOu5fE5tq1vLDOP3bdCSKQ=
-
-Name: mozilla.cfg
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: QN7VUFbn7i4XfCTfQhZogA==
-SHA1-Digest: f47dmcoACYEBc7bQRVnwCaMAqGA=
-
-Name: NoScript_License.txt
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: CYkluXWIXUk6QpUjqxcMtA==
-SHA1-Digest: 624YpFdNjCFbDE7kLhN+vbF9hgM=
-
-Name: chrome/noscript.jar
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: wnzMxDPBscFXCe8DQoyRuQ==
-SHA1-Digest: Zop/Jd0rXx0RYXZVhVvv57gAv40=
-
-Name: components/noscriptService.js
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: IHQYz5HkYEIoRCYncn/ubw==
-SHA1-Digest: Rq4MgTE4codE/K2vuFzpT0O8m/E=
-
-Name: defaults/preferences/noscript.js
-Digest-Algorithms: MD5 SHA1
-MD5-Digest: v/p13eoHczWwEjhcl4r/cw==
-SHA1-Digest: uNFfb2Z78lhk9Qk/KQQcbcAryHI=
-
diff --git a/META-INF/mozilla.rsa b/META-INF/mozilla.rsa
deleted file mode 100644
index 12d19d5..0000000
Binary files a/META-INF/mozilla.rsa and /dev/null differ
diff --git a/META-INF/mozilla.sf b/META-INF/mozilla.sf
deleted file mode 100644
index 7409bc0..0000000
--- a/META-INF/mozilla.sf
+++ /dev/null
@@ -1,4 +0,0 @@
-Signature-Version: 1.0
-MD5-Digest-Manifest: 6ima9nR0pHzvwlIn2rXp7g==
-SHA1-Digest-Manifest: 7dKWroPu1nhpvzUMDmw9bZwwDpc=
-
diff --git a/chrome/noscript.jar!/content/noscript/DNS.js b/chrome/noscript.jar!/content/noscript/DNS.js
index 8048bd0..09c6d65 100644
--- a/chrome/noscript.jar!/content/noscript/DNS.js
+++ b/chrome/noscript.jar!/content/noscript/DNS.js
@@ -329,7 +329,10 @@ var DNS = {
   },
 
   _localIP6Rx: /^(?:::1?$|f(?:[cd]|e[c-f])[0-9a-f]*:)/i,
-  get _localIPMatcher() new AddressMatcher('0. 127. 10. 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 255.255.255.255'),
+  get _localIPMatcher() {
+    delete this._localIPMatcher;
+    return this._localIPMatcher = new AddressMatcher('0. 127. 10. 169.254.0.0/16 172.16.0.0/12 192.168.0.0/16 255.255.255.255');
+  },
   isLocalIP: function(addr) {
     // see https://bug354493.bugzilla.mozilla.org/attachment.cgi?id=329492 for a more verbose but incomplete (missing IPv6 ULA) implementation
     // Relevant RFCs linked at http://en.wikipedia.org/wiki/Private_network
diff --git a/chrome/noscript.jar!/content/noscript/Lang.js b/chrome/noscript.jar!/content/noscript/Lang.js
index 009e2e0..71a74e9 100644
--- a/chrome/noscript.jar!/content/noscript/Lang.js
+++ b/chrome/noscript.jar!/content/noscript/Lang.js
@@ -10,8 +10,8 @@ const Lang = {
   _memoizeMember: function(obj, prop, func) {
     obj.__defineGetter__(prop, function() {
       var r = func.apply(this);
-      this.__defineGetter__(prop, function() { return r; })
+      this.__defineGetter__(prop, function() { return r; });
 			return r;
 		});
   }
-}
\ No newline at end of file
+}
diff --git a/chrome/noscript.jar!/content/noscript/Policy.js b/chrome/noscript.jar!/content/noscript/Policy.js
index ac2be1b..eacfc1f 100644
--- a/chrome/noscript.jar!/content/noscript/Policy.js
+++ b/chrome/noscript.jar!/content/noscript/Policy.js
@@ -15,7 +15,7 @@ var PolicyState = {
     }
     this.addCheck(url);
   },
-  
+
   removeCheck: function(url) {
     let idx = this.checking.indexOf(url);
     if (idx !== -1) this.checking.splice(idx, 1);
@@ -23,11 +23,11 @@ var PolicyState = {
   isChecking: function(url) {
     return this.checking.indexOf(url) !== -1;
   },
-  
+
   hintsForURI: function(uri, clear) {
     let hl = this.hintsList;
     let spec = uri.spec;
-    
+
     for (let j = hl.length; j--;) {
       let h = hl[j];
       if (h.URISpec !== spec)  continue;
@@ -41,13 +41,13 @@ var PolicyState = {
     }
     return null;
   },
-  
+
   attach: function(channel) {
     let uri = channel.URI;
     if (this.extract(channel) ||
         !(uri.schemeIs("http") || uri.schemeIs("https")))
       return;
-    
+
     let hints = this.hintsForURI(uri, true);
     if (hints) {
       hints._attached = true;
@@ -72,7 +72,7 @@ var PolicyState = {
 ,
   detach: function(channel) {
     let uri = channel.URI;
-    if (!(uri.schemeIs("http") || uri.schemeIs("https"))) return null; 
+    if (!(uri.schemeIs("http") || uri.schemeIs("https"))) return null;
     let hints = this.extract(channel, true);
     if (!hints) this.reset(uri);
     return hints;
@@ -85,19 +85,19 @@ var PolicyState = {
   cancel: function(hints) {
     hints._psCancelled = true;
   },
-  
+
   SWEEP_COUNTDOWN: 1000,
   _sweepCount: 1000,
   save: function(uri, hints) {
-  
+
     if ("_psCancelled" in hints) return false;
 
     this.hintsList.push(new PolicyHints(uri, hints));
-    
+
     if (this._sweepCount-- < 0) this.sweep();
     return true;
   },
-  
+
   sweep: function() {
     this._sweepCount = this.SWEEP_COUNTDOWN;
     let hl = this.hintsList;
@@ -111,7 +111,7 @@ var PolicyState = {
       if (!u) hl.splice(j, 1);
     }
   },
-  
+
   toString: function() {
     return "PolicyState: " + this.hintsList.map(function(h) h.URISpec + " - " + h.URIRef.get()).toSource()
   }
@@ -168,9 +168,9 @@ const NOPContentPolicy = {
   shouldProcess: CP_NOP
 };
 
-  
+
 // nsIContentPolicy interface
-// we use numeric constants for performance sake: 
+// we use numeric constants for performance sake:
 // TYPE_OTHER = 1
 // TYPE_SCRIPT = 2
 // TYPE_IMAGE = 3
@@ -197,7 +197,7 @@ const MainContentPolicy = {
   shouldLoad: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aInternalCall, principal) {
     if (!aContentLocation) {
       if (aContentType === 5 && aInternalCall === CP_SHOULDPROCESS && aMimeTypeGuess === "application/x-shockwave-flash")
-        return this.reject("Empty Flash object", arguments); 
+        return this.reject("Empty Flash object", arguments);
       aContentLocation = aRequestOrigin;
     }
     if (aContentType === 5 && /^application\/x-java\b/i.test(aMimeTypeGuess) &&
@@ -205,7 +205,7 @@ const MainContentPolicy = {
       try {
         let cs = aContext.ownerDocument.characterSet;
         let code, codeBase, archive;
-        
+
         let pp = aContext.getElementsByTagName("param");
         for (let j = 0, len = pp.length; j < len; j++) {
           let p = pp[j];
@@ -217,30 +217,30 @@ const MainContentPolicy = {
             }
           }
         }
-        
+
         if (!code)
           code = aContext.getAttribute("code");
-        
+
         if (!codeBase)
           codeBase = aContext.getAttribute("codebase") ||
           (aContext instanceof Ci.nsIDOMHTMLAppletElement ? "/" : ".");
-        
+
         if (!archive)
           archive = aContext.getAttribute("archive");
-        
+
         try {
           aContentLocation = IOS.newURI(codeBase, cs, aRequestOrigin);
         } catch (e) {}
- 
+
         if (aContext instanceof Ci.nsIDOMHTMLEmbedElement) {
-          code = aContext.getAttribute("code"); 
+          code = aContext.getAttribute("code");
           if (code && /\bjava\b/.test(aMimeTypeGuess)) {
             archive = archive ? code + " " + archive : code;
           } else code = '';
         }
         if (archive) {
           let prePaths;
-          let base = aContentLocation;       
+          let base = aContentLocation;
           let jars = archive.split(/[\s,]+/)
           for (let j = jars.length; j-- > 0;) {
             try {
@@ -265,7 +265,7 @@ const MainContentPolicy = {
           }
           this.setExpando(aContext, "allowed", null);
         }
-        
+
         if (code) {
           try {
             if (!/\.class\s*$/i.test(code)) code += ".class";
@@ -274,9 +274,9 @@ const MainContentPolicy = {
         }
       } catch (e) {}
     }
-    
+
     var logIntercept = this.consoleDump, logBlock;
-    
+
     if(logIntercept) {
       logBlock = logIntercept & LOG_CONTENT_BLOCK;
       logIntercept = logIntercept & LOG_CONTENT_INTERCEPT;
@@ -284,8 +284,8 @@ const MainContentPolicy = {
 
     if (!aInternalCall) {
       PolicyState.addCheck(aContentLocation);
-    }        
- 
+    }
+
     try {
 
       var originURL, locationURL, originSite, locationSite, scheme,
@@ -293,55 +293,55 @@ const MainContentPolicy = {
           isLegacyFrame, blockThisFrame, contentDocument,
           unwrappedLocation, mimeKey,
           mustCountObject = false;
-      
-      
+
+
       unwrappedLocation = IOUtil.unwrapURL(aContentLocation);
       scheme = unwrappedLocation.scheme;
-      
+
       if (scheme === "file") {
-        let principal =  aContext && (aContext.nodePrincipal ||
+         principal = principal || aContext && (aContext.nodePrincipal ||
                                       aContext.document && aContext.document.nodePrincipal);
         if (!ns.checkLocalLink(unwrappedLocation, principal, true)) {
           return this.reject("Local File Link", arguments);
         }
       }
-      
+
       var isHTTP = scheme === "http" || scheme === "https";
-      
+
       if (isHTTP) {
-        
+
         // reject any cross-site google-analytics subrequest unless explicitly whitelisted
         if (aContentType !== 2 && aContentType !== 6 &&
             unwrappedLocation.host.indexOf("google-analytics") !== -1 &&
             unwrappedLocation.prePath !== (aRequestOrigin && aRequestOrigin.prePath) &&
             !this.isJSEnabled(this.getSite(unwrappedLocation.spec))
             ) {
-          return this.reject("Google Analytics web bug", arguments); 
+          return this.reject("Google Analytics web bug", arguments);
         }
-        
+
         if (aRequestOrigin &&
             !(aContentType === 4 && Bug.$677643)
             ) {
-          
+
           HTTPS.forceURI(unwrappedLocation, null, aContext);
-          
+
           switch(aContentType) {
-             
+
             case 5:
-              
-              
+
+
               // early ABE check for any plugin content except Flash, Silverlight and PDF
               // (Java, for instance, is known to bypass HTTP observers!)
               if (/^application\/(?:x-(?:shockwave-flash|silverlight)$|futuresplash|pdf$)/i.test(aMimeTypeGuess))
                 break;
-            
+
             case 7:
               if (aContext instanceof Ci.nsIDOMHTMLObjectElement) {
                 let win = aContext.ownerDocument.defaultView
                 if (this.isCachedObjectMime(aMimeTypeGuess) &&
                     !(aContext.offsetWidth && aContext.offsetHeight) &&
                     this.getPref("allowCachingObjects") &&
-                    
+
                     aRequestOrigin && this.isJSEnabled(this.getSite(aRequestOrigin.spec), win) &&
                     !this.pluginForMime(aMimeTypeGuess) &&
                     (aMimeTypeGuess.indexOf("css") > 0 || this.isJSEnabled(this.getSite(aContentLocation.spec), win))
@@ -350,57 +350,57 @@ const MainContentPolicy = {
                 }
               }
               if (aContentType === 7 || aInternalCall) break;
-              
+
             case 1: case 12: // we may have no chance to check later for unknown and sub-plugin requests
-             
+
               let res = ABE.checkPolicy(aRequestOrigin, unwrappedLocation, aContentType);
               if (res && res.fatal) {
                 this.requestWatchdog.notifyABE(res, true);
-                return this.reject("ABE-denied inclusion", arguments); 
+                return this.reject("ABE-denied inclusion", arguments);
               }
           }
         }
-        
+
         if (logIntercept && this.cpConsoleFilter.indexOf(aContentType) > -1) {
           this.cpDump("processing", aContentType, aContentLocation, aRequestOrigin, aContext, aMimeTypeGuess, aInternalCall);
           if (this.consoleDump & LOG_CONTENT_CALL)
              this.dump(new Error().stack);
         }
-        
+
       }
-      
+
       switch (aContentType) {
         case 9: // XBL - warning, in 1.8.x could also be XMLHttpRequest...
-          return this.forbidXBL && 
-            this.forbiddenXMLRequest(aRequestOrigin, aContentLocation, aContext, this.forbiddenXBLContext) 
+          return this.forbidXBL &&
+            this.forbiddenXMLRequest(aRequestOrigin, aContentLocation, aContext, this.forbiddenXBLContext)
             ? this.reject("XBL", arguments) : CP_OK;
-        
+
         case 11: // in Firefox 3 we check for cross-site XHR
-          return this.forbidXHR && 
-            this.forbiddenXMLRequest(aRequestOrigin, aContentLocation, aContext, this.forbiddenXHRContext) 
+          return this.forbidXHR &&
+            this.forbiddenXMLRequest(aRequestOrigin, aContentLocation, aContext, this.forbiddenXHRContext)
              ? this.reject("XHR", arguments) : CP_OK;
-        
+
         case 10: // TYPE_PING
-          if (this.jsEnabled || !this.getPref("noping", true) || 
+          if (this.jsEnabled || !this.getPref("noping", true) ||
               aRequestOrigin && this.isJSEnabled(this.getSite(aRequestOrigin.spec))
             )
             return CP_OK;
-            
+
           return this.reject("Ping", arguments);
-        
+
          case 17: // CSP report, avoid exfiltration on untrusted resources
           if (this.jsEnabled ||
               this.isJSEnabled(this.getSite(aContentLocation.spec)) &&
               aRequestOrigin && this.isJSEnabled(this.getSite(aRequestOrigin.spec))
             )
             return CP_OK;
-            
+
           return this.reject("CSP report", arguments);
-        
+
         case 2:
           forbid = isScript = true;
           break;
-        
+
         case 4: // STYLESHEETS
           if (PolicyUtil.supportsXSL ||
               !(PolicyUtil.isXSL(aContext) && /\/x[ms]l/.test(aMimeTypeGuess))
@@ -412,29 +412,29 @@ const MainContentPolicy = {
             break;
           }
           return CP_OK;
-        
+
         case 14: // fonts
           forbid = this.forbidFonts;
           if (!forbid) return CP_OK;
           mimeKey = "FONT";
           if (aContentLocation && aRequestOrigin && aContentLocation.schemeIs("data"))
             locationURL = this.getSite(aRequestOrigin.spec);
-          
+
           break;
-        
+
         case 5: // embeds
 
-          if (aContentLocation && aRequestOrigin && 
+          if (aContentLocation && aRequestOrigin &&
               (locationURL = aContentLocation.spec) == (originURL = aRequestOrigin.spec) &&
               aMimeTypeGuess) {
-              
+
             if ((aContext instanceof Ci.nsIDOMHTMLEmbedElement) &&
               this.isAllowedObject(locationURL, aMimeTypeGuess)
               ) {
               if (logIntercept) this.dump("Plugin document " + locationURL);
               return CP_OK; // plugin document, we'll handle it in our webprogress listener
             }
-            
+
             if (!(aContext.getAttribute("data") || aContext.getAttribute("codebase") || aContext.getAttribute("archive") || aContext.getAttribute("src")
                   || aContext.firstChild) && aMimeTypeGuess == "application/x-shockwave-flash") {
               if (logIntercept) this.dump("Early Flash object manipulation with no source set yet.");
@@ -444,7 +444,7 @@ const MainContentPolicy = {
               this.setExpando(aContext, "requiresReload", true);
             }
           }
-          
+
           case 15: // media
           if (aContentType === 15) {
               if (aRequestOrigin && !this.isJSEnabled(this.getSite(aRequestOrigin.spec), aContext.ownerDocument.defaultView)) {
@@ -456,48 +456,48 @@ const MainContentPolicy = {
                   else media.pause();
                 }, true);
               }, 0);
-            } 
-            
+            }
+
             forbid = this.forbidMedia;
-            
+            if (!forbid && aMimeTypeGuess) return CP_OK;
           }
-          
-          if (aMimeTypeGuess) // otherwise let's treat it as an iframe
+
+          if (aMimeTypeGuess)  // otherwise let's treat it as an iframe
             break;
-                    
+
         case 7:
-          
+
           locationURL = aContentLocation.spec;
           originURL = aRequestOrigin && aRequestOrigin.spec || "";
           let vsPos = locationURL.indexOf("view-source:");
           if (vsPos !== -1 && vsPos < 7 // includes feed: and pcast: prefixed URLs
               && /^(?:https?|ftp):/.test(originURL))
             return this.reject("Embedded view-source:", arguments);
-          
-          if (locationURL == "about:blank" || /^chrome:/.test(locationURL)
+
+          if (locationURL === "about:blank" || /^chrome:/.test(locationURL)
             || !originURL && (aContext instanceof Ci.nsIDOMXULElement)  // custom browser like in Stumbleupon discovery window
           ) return CP_OK;
-          
+
           if (!aMimeTypeGuess) {
             aMimeTypeGuess = this.guessMime(aContentLocation);
             if (logIntercept)
               this.dump("Guessed MIME '" + aMimeTypeGuess + "' for location " + locationURL);
           }
-          
-          if (aContentType == 15) {
+
+          if (aContentType === 15) {
             if (!aMimeTypeGuess) try {
               aMimeTypeGuess = aContext.tagName.toLowerCase() + "/ogg";
             } catch (e) {}
-            
+
             if (!forbid) return CP_OK;
-            
+
             break; // we just need to guess the Mime for video/audio
           }
-          
+
           if (!(aContext instanceof Ci.nsIDOMXULElement)) {
-        
+
             isLegacyFrame = aContext instanceof Ci.nsIDOMHTMLFrameElement;
-       
+
             if (isLegacyFrame
                 ? this.forbidFrames || // we shouldn't allow framesets nested inside iframes, because they're just as bad
                                        this.forbidIFrames &&
@@ -510,41 +510,41 @@ const MainContentPolicy = {
                 try {
                   contentDocument = aContext.contentDocument;
                 } catch(e) {}
-             
+
                 blockThisFrame = (aInternalCall === CP_FRAMECHECK) && !(
                         this.knownFrames.isKnown(locationURL, originSite = this.getSite(originURL)) ||
                       /^(?:chrome|resource|wyciwyg):/.test(locationURL) ||
-                      locationURL == this._silverlightInstalledHack ||
-                      locationURL == this.compatGNotes ||
+                      locationURL === this._silverlightInstalledHack ||
+                      locationURL === this.compatGNotes ||
                       (
                         originURL
-                          ? ( /^(?:chrome|about|resource):/.test(originURL) && originURL !== "about:blank" || 
+                          ? ( /^(?:chrome|about|resource):/.test(originURL) && originURL !== "about:blank" ||
                              /^(?:data|javascript):/.test(locationURL) &&
                               (contentDocument && (originURL == contentDocument.URL
                                                     || /^(?:data:|javascript:|about:blank$)/.test(contentDocument.URL)
                               ) || this.isFirebugJSURL(locationURL)
                              )
                             )
-                          : contentDocument && 
+                          : contentDocument &&
                             this.getSite(contentDocument.URL) == (locationSite = this.getSite(locationURL))
                        )
                   ) && this.forbiddenIFrameContext(originURL || (originURL = aContext.ownerDocument.URL), locationURL);
             }
-          } 
+          }
         case 6:
-          
+
           if (aRequestOrigin && aRequestOrigin != aContentLocation) {
-            
+
             if (isHTTP) {
-              
+
               // external?
               if (aRequestOrigin.schemeIs("chrome") && aContext && aContext.ownerDocument &&
                 aContext.ownerDocument.defaultView.isNewToplevel){
                 this.requestWatchdog.externalLoad = aContentLocation.spec;
               }
-              
+
             } else if(scheme === "data" || scheme === "javascript") {
-             
+
               if (aContext instanceof Ci.nsIDOMXULElement) {
                 originURL = originURL || aRequestOrigin.spec;
                 if (originURL === "chrome://browser/content/browser.xul") {
@@ -555,7 +555,7 @@ const MainContentPolicy = {
                     if (stack[j].indexOf("onxbldrop([object DragEvent])@chrome://global/content/bindings/browser.xml") === 0) {
                       ns.log('NoScript prevented "' + aContentLocation.spec + '" from being loaded on drop.');
                       return this.reject("Drop XSS", arguments);
-                    }            
+                    }
                   }
                 } else if (
                   !(aContext.ownerDocument.URL === originURL // Addon-SDK panels
@@ -565,12 +565,12 @@ const MainContentPolicy = {
                 }
               }
               return CP_OK; // JavaScript execution policies will take care of this
-            } else if(scheme !== aRequestOrigin.scheme && 
+            } else if(scheme !== aRequestOrigin.scheme &&
                 scheme !== "chrome" && // faster path for common case
                 this.isExternalScheme(scheme)) {
               // work-around for bugs 389106 & 389580, escape external protocols
-              if (aContentType !== 6 && !aInternalCall && 
-                  this.getPref("forbidExtProtSubdocs", true) && 
+              if (aContentType !== 6 && !aInternalCall &&
+                  this.getPref("forbidExtProtSubdocs", true) &&
                   !this.isJSEnabled(originSite = this.getSite(originURL = originURL || aRequestOrigin.spec)) &&
                   (!aContext.contentDocument || aContext.contentDocument.URL != originURL)
                   ) {
@@ -586,61 +586,61 @@ const MainContentPolicy = {
               return this.reject("Locked Privileged UI", arguments);
             }
           }
-          
+
           if (!(this.forbidSomeContent || this.alwaysBlockUntrustedContent) ||
                 !blockThisFrame && (
                   aContext instanceof Ci.nsIDOMXULElement ||
-                  !aMimeTypeGuess 
+                  !aMimeTypeGuess
                   || aMimeTypeGuess.substring(0, 5) == "text/"
-                  || aMimeTypeGuess == "application/xml" 
+                  || aMimeTypeGuess == "application/xml"
                   || aMimeTypeGuess == "application/xhtml+xml"
                   || aMimeTypeGuess.substring(0, 6) == "image/"
                   || !(this.isMediaType(aMimeTypeGuess) || this.pluginForMime(aMimeTypeGuess))
                 )
             ) {
-            
+
             if (aContext instanceof Ci.nsIDOMElement) {
               // this is alternate to what we do in countObject, since we can't get there
               // this.delayExec(this.opaqueIfNeeded, 0, aContext); // TODO uncomment
             }
-            
+
             if (logBlock)
-              this.dump("Document OK: " + aMimeTypeGuess + "@" + (locationURL || aContentLocation.spec) + 
+              this.dump("Document OK: " + aMimeTypeGuess + "@" + (locationURL || aContentLocation.spec) +
                 " --- PGFM: " + this.pluginForMime(aMimeTypeGuess));
-            
+
             if (aContentLocation.schemeIs("about") && /^about:(?:net|cert)error\?/.test(aContentLocation.spec)) {
               this.handleErrorPage(aContext, aContentLocation);
             }
-            
+
             return CP_OK;
           }
           break;
-        
+
         case 12:
           // Silverlight mindless activation scheme :(
-          if (!this.forbidSilverlight 
+          if (!this.forbidSilverlight
               || !this.getExpando(aContext, "silverlight") || this.getExpando(aContext, "allowed"))
             return CP_OK;
-  
+
           aMimeTypeGuess = "application/x-silverlight";
           break;
         default:
           return CP_OK;
       }
-      
-  
+
+
       locationURL = locationURL || aContentLocation.spec;
       locationSite = locationSite || this.getSite(locationURL);
-      
+
       var untrusted = untrusted || this.isUntrusted(locationSite);
-      
+
       if(logBlock)
         this.dump("[CP PASS 2] " + aMimeTypeGuess + "*" + locationURL + ", " + aContentType + ", " + aInternalCall);
-  
+
       if (isScript) {
         // we must guess the right context here, see https://bugzilla.mozilla.org/show_bug.cgi?id=464754
         contentDocument = aContext && aContext.ownerDocument || aContext;
-        
+
         // we get the embedding document URL explicitly,
         // otherwise on redirection we would get the previous redirected URL
         if (contentDocument) { // XSLT comes with no context sometimes...
@@ -651,8 +651,8 @@ const MainContentPolicy = {
         }
         originSite = originURL && this.getSite(originURL) || "";
         let httpOrigin = originSite.indexOf("http") === 0;
-      
-       
+
+
         let scriptElement;
         if (aContentType === 2) { // "real" JavaScript include
           if (!(this.cascadePermissions || this.globalHttpsWhitelist) &&
@@ -662,7 +662,7 @@ const MainContentPolicy = {
             this.syncUI(contentDocument);
             return this.reject("Script inclusion on forbidden page", arguments);
           }
-          
+
           forbid = !(originSite && locationSite == originSite);
           scriptElement = aContext instanceof Ci.nsIDOMHTMLScriptElement;
 
@@ -702,64 +702,64 @@ const MainContentPolicy = {
           if (scriptElement) {
             ScriptSurrogate.replaceScript(aContext);
           }
-          
+
           this.syncUI(contentDocument);
-          
+
           return this.reject(isScript ? "Script" : "XSLT", arguments);
         } else {
-          
+
           if (scriptElement) {
-            
+
             if (this.executingJSURL(contentDocument.defaultView.top.document) &&
                 !this.jsPolicySites.matches(this.getSite(contentDocument.defaultView.location.href))) {
               this.bookmarkletImport(aContext, locationURL);
               return this.reject("Bookmarklet inclusion, already imported synchronously", arguments);
             }
-            
+
           }
-          
+
           return CP_OK;
         }
       }
-  
+
       mimeKey = mimeKey || aMimeTypeGuess || "application/x-unknown";
-      
+
       if (!(forbid || locationSite === "chrome:")) {
-        
+
         forbid = blockThisFrame || untrusted && this.alwaysBlockUntrustedContent;
         if (!forbid) {
           if (this.forbidSomeContent && aMimeTypeGuess) {
-           
-            forbid = 
+
+            forbid =
               (
                 (isFlash = /^application\/(?:x-shockwave-flash|futuresplash)/i.test(aMimeTypeGuess)) ||
-                (isJava = /^application\/x-java\b/i.test(aMimeTypeGuess)) || 
-                (isSilverlight = /^application\/x-silverlight\b/i.test(aMimeTypeGuess)) 
+                (isJava = /^application\/x-java\b/i.test(aMimeTypeGuess)) ||
+                (isSilverlight = /^application\/x-silverlight\b/i.test(aMimeTypeGuess))
               ) &&
-              isFlash && this.forbidFlash || 
-              isJava && this.forbidJava || 
+              isFlash && this.forbidFlash ||
+              isJava && this.forbidJava ||
               isSilverlight && this.forbidSilverlight;
-                        
+
             // see http://heasman.blogspot.com/2008/03/defeating-same-origin-policy-part-i.html
             if (isJava && /(?:[^\/\w\.\$\:]|^\s*\/\/)/.test(aContext.getAttribute("code") || "")) {
               return this.reject("Illegal Java code attribute " + aContext.getAttribute("code"), arguments);
             }
-            
+
             if (isFlash) this.tagWindowlessObject(aContext);
-            
+
             if (this.isAllowedMime(mimeKey, locationSite)) return CP_OK;
-            
+
             if (forbid) {
 
               if (isSilverlight) {
                 if (logIntercept) this.dump("Silverlight " + aContentLocation.spec + " " + typeof(aContext) + " " + aContentType + ", " + aInternalCall);
-               
+
                 this.setExpando(aContext, "silverlight", aContentType != 12);
-                
+
                 locationURL = this.resolveSilverlightURL(aRequestOrigin, aContext);
                 locationSite = this.getSite(locationURL);
                 originURL = aRequestOrigin && aRequestOrigin.spec;
-                
+
                 if(this.isAllowedObject(locationURL, mimeKey, locationSite) ||
                    this.isAllowedObjectByDOM(aContext, locationURL, originURL, mimeKey, locationSite)) {
                   if (logIntercept && forbid) this.dump("Silverlight " + locationURL + " is whitelisted, ALLOW");
@@ -783,60 +783,60 @@ const MainContentPolicy = {
       }
 
       if (forbid && (!this.contentBlocker || /^resource:/.test(locationSite))) {
-        
+
         originURL = originURL || (aRequestOrigin && aRequestOrigin.spec);
         originSite = originSite || this.getSite(originURL);
-        
+
         let win = aContext && (
           aContext.ownerDocument
           ? aContext.ownerDocument.defaultView
           : aContext.document ? aContext : aContext.defaultView
         );
-        
+
         let jsRx = /^(?:javascript|data):/;
-        
-        let originOK = originSite 
-          ? this.isJSEnabled(originSite, win) 
+
+        let originOK = originSite
+          ? this.isJSEnabled(originSite, win)
           : jsRx.test(originURL); // if we've got such an origin, parent should be trusted
-        
-        let locationOK = locationSite 
+
+        let locationOK = locationSite
               ? this.isJSEnabled(locationSite, win)
               : jsRx.test(locationURL) && originOK // use origin for javascript: or data:
         ;
-        
+
         if (!locationOK && locationSite && this.ignorePorts && this.portRx.test(locationSite)) {
           if (this.isJSEnabled(locationSite.replace(this.portRx, ''))) {
             locationOK = this.autoTemp(locationSite);
           }
         }
-        
-        forbid = !(locationOK && (originOK || 
-          !this.getPref(blockThisFrame 
+
+        forbid = !(locationOK && (originOK ||
+          !this.getPref(blockThisFrame
             ? "forbidIFramesParentTrustCheck" : "forbidActiveContentParentTrustCheck",
             true)
           ));
       }
-       
+
       mustCountObject = true;
-      
+
       if (forbid) forbid = !(aContentLocation.schemeIs("file") && aRequestOrigin && aRequestOrigin.schemeIs("resource")); // fire.fm work around
-      
+
       if (forbid && this.cascadePermissions && !this.contentBlocker) {
         let principal = aContext.ownerDocument && aContext.ownerDocument.defaultView.top.document.nodePrincipal;
-        forbid = untrusted || !this.isJSEnabled(this.getSite(principal.origin), aContext.ownerDocument.defaultView); 
+        forbid = untrusted || !this.isJSEnabled(this.getSite(principal.origin), aContext.ownerDocument.defaultView);
       }
-      
+
       if (forbid) {
-        
+
         if (!originSite) originSite = this.getSite(originURL || (originURL = aRequestOrigin && aRequestOrigin.spec || ""));
-        
+
         if (isJava && originSite && /^data:application\/x-java\b/.test(locationURL) ||
             aContentType === 15 && locationURL === "data:,") {
           locationURL = locationSite = originSite;
         }
-        
+
         try {  // moved here because of http://forums.mozillazine.org/viewtopic.php?p=3173367#3173367
-          if (this.getExpando(aContext, "allowed") || 
+          if (this.getExpando(aContext, "allowed") ||
             this.isAllowedObject(locationURL, mimeKey, locationSite, originSite) ||
             this.isAllowedObjectByDOM(aContext, locationURL, originURL, mimeKey, locationSite, originSite)
             ) {
@@ -847,13 +847,13 @@ const MainContentPolicy = {
         } catch(ex) {
           this.dump("Error checking plugin per-object permissions:" + ex);
         }
-        
+
         if (isLegacyFrame) { // inject an embed and defer to load
           if (blockThisFrame && this.blockLegacyFrame(aContext, aContentLocation, true))
             return this.reject("Deferred Legacy Frame " + locationURL, arguments);
         } else {
           try {
-            if ((aContentType == 5 || aContentType == 7 || aContentType == 12 || aContentType == 14 || aContentType == 15) && (aContext instanceof Ci.nsIDOMNode)) {
+            if ((aContentType === 5 || aContentType === 7 || aContentType === 12 || aContentType === 14 || aContentType === 15) && (aContext instanceof Ci.nsIDOMNode)) {
               if (locationURL != "data:application/x-noscript-blocked,") {
                 mustCountObject = false; // we do it in _preProcessObjectElements()
                 this.delayExec(this.tagForReplacement, 0, aContext, {
@@ -871,8 +871,8 @@ const MainContentPolicy = {
           }
         }
       } else {
-        
-  
+
+
         if (isSilverlight) {
           this.setExpando(aContext, "silverlight", aContentType != 12);
         }
@@ -883,25 +883,25 @@ const MainContentPolicy = {
     } catch(e) {
       return this.reject("Content (Fatal Error, " + e  + " - " + e.stack + ")", arguments);
     } finally {
-      
+
       if (aContentType === 5) this.setExpando(aContext, "site", locationSite);
-      
+
       if (mustCountObject) this.countObject(aContext, locationSite);
-      
+
       if (!aInternalCall) PolicyState.removeCheck(aContentLocation);
-      
+
       if (isHTTP) PolicyState.save(unwrappedLocation, arguments);
-      
+
     }
     return CP_OK;
   },
-  
-  
+
+
   shouldProcess: function(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeType, aExtra) {
     return this.shouldLoad(aContentType, aContentLocation, aRequestOrigin, aContext, aMimeType, CP_SHOULDPROCESS);
   },
-  
-  
+
+
 }
 
 var PolicyUtil = {
@@ -909,5 +909,5 @@ var PolicyUtil = {
   isXSL: function(ctx) {
     return ctx && !(ctx instanceof Ci.nsIDOMHTMLLinkElement || ctx instanceof Ci.nsIDOMHTMLStyleElement || ctx instanceof Ci.nsIDOMHTMLDocument);
   },
-  
+
 };
diff --git a/chrome/noscript.jar!/content/noscript/about.xul b/chrome/noscript.jar!/content/noscript/about.xul
index 040b95d..9b89dd1 100644
--- a/chrome/noscript.jar!/content/noscript/about.xul
+++ b/chrome/noscript.jar!/content/noscript/about.xul
@@ -48,7 +48,7 @@ function about_onload() {
   
   var str = getString("aboutTitle",["NoScript"]);
   if(str) document.title = str;
-  str = getString("version", ["2.6.9.26"]);
+  str = getString("version", ["2.6.9.27"]);
   if(str) document.getElementById("extensionVersion").setAttribute("value", str);
   
   setString("extensionDescription",null,"extensions.{73a6fe31-595d-460b-a920-fcc0f8843232}.description");
@@ -86,7 +86,7 @@ function about_open(url, features) {
 <hbox id="headBox" align="end">
 <vbox flex="1">
 <label value="NoScript" id="extensionName" crop="right"/>
-<label value="Version 2.6.9.26" id="extensionVersion" crop="right"/>
+<label value="Version 2.6.9.27" id="extensionVersion" crop="right"/>
 </vbox>
 <vbox flex="1" align="end">
 <hbox align="end">
@@ -164,7 +164,7 @@ function about_open(url, features) {
 <hbox>
 <label id="license" class="text-link" tooltiptext="Read end-user license" onclick="about_open('chrome://noscript/content/NoScript_License.txt')">License</label>
 <spacer flex="1"/>
-<label id="changelog" class="text-link" align="center" tooltiptext="See Changelog" onclick="about_open('https://noscript.net/changelog#2.6.9.26')">Changelog</label>
+<label id="changelog" class="text-link" align="center" tooltiptext="See Changelog" onclick="about_open('https://noscript.net/changelog#2.6.9.27')">Changelog</label>
 <spacer flex="1"/>
 <label id="extensionHomepage" class="text-link" tooltiptext="Visit Extension Home Page" onclick="about_open('https://noscript.net')">https://noscript.net</label>
 </hbox>
diff --git a/chrome/noscript.jar!/content/noscript/noscriptOverlay.js b/chrome/noscript.jar!/content/noscript/noscriptOverlay.js
index 7dcb37a..15956d2 100644
--- a/chrome/noscript.jar!/content/noscript/noscriptOverlay.js
+++ b/chrome/noscript.jar!/content/noscript/noscriptOverlay.js
@@ -184,7 +184,7 @@ return noscriptUtil.service ? {
       return;
     }
 
-    if (ev.button === 1) {
+    if (ev.button === 1 && this.ns.getPref('middlemouse_temp_allow_main_site')) {
       this.allowPage();
       ev.preventDefault();
       return;
diff --git a/chrome/noscript.jar!/locale/be-BY/noscript/about.properties b/chrome/noscript.jar!/locale/be-BY/noscript/about.properties
index 72902b4..98a4b3b 100644
--- a/chrome/noscript.jar!/locale/be-BY/noscript/about.properties
+++ b/chrome/noscript.jar!/locale/be-BY/noscript/about.properties
@@ -3,13 +3,13 @@ aboutTitle=Аб пашырэнні %S
 extensionContributors=Удзельнікі:
 extensionContributors.tip=Людзі, якія дапамагалі паляпшаць пашырэнне
 extensionCreatorLabel=Аўтар:
-changelog=Гісторыя версіяў
-changelog.tip=Праглядзець гісторыю версіяў NoScript
+changelog=Спіс зменаў
+changelog.tip=Паказаць спіс зменаў
 license=Ліцэнзійная дамова
-license.tip=Ліцэнзійная дамова канчатковага карыстача
-logo.tip=Адкрыць хатнюю старонку пашырэння
-sponsor.tip=Адкрыць хатнюю старонку спонсара
-informaction.tip=Адкрыць хатнюю старонку InformAction
-extensionHomepage.tip=Адкрыць хатнюю старонку пашырэння
-extensionCreator.tip=Адкрыць хатнюю старонку аўтара
+license.tip=Прачытаць ліцэнзійную дамову з канчатковым карыстальнікам
+logo.tip=Наведаць хатнюю старонку пашырэння
+sponsor.tip=Наведаць хатнюю старонку спонсара
+informaction.tip=Наведаць хатнюю старонку InformAction
+extensionHomepage.tip=Наведаць хатнюю старонку пашырэння
+extensionCreator.tip=Наведаць хатнюю старонку аўтара
 version=Версія %S
diff --git a/chrome/noscript.jar!/locale/bg-BG/noscript/noscript.dtd b/chrome/noscript.jar!/locale/bg-BG/noscript/noscript.dtd
index 8652908..532b58b 100644
--- a/chrome/noscript.jar!/locale/bg-BG/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/bg-BG/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Настройки…">
 <!ENTITY noscriptOptions.accesskey "Н">
 <!ENTITY noscriptOptionsLong "Настройки на NoScript">
-<!ENTITY noscriptAbout "За NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "За NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Можете да зададете в кои уеб-сайтове е позволено да се използват скриптовете. Напишете адреса или домейна (например "http://www.site.com" или "site.com") на сайта, който искате да разрешите и натиснете Разреши.">
 <!ENTITY noscriptWebAddress "Адрес на уеб-сайта:">
 <!ENTITY noscriptAllow "Разреши">
diff --git a/chrome/noscript.jar!/locale/ca-AD/noscript/noscript.dtd b/chrome/noscript.jar!/locale/ca-AD/noscript/noscript.dtd
index 79cce04..c4a6ca7 100644
--- a/chrome/noscript.jar!/locale/ca-AD/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/ca-AD/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcions...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcions de NoScript">
-<!ENTITY noscriptAbout "Quant a NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Quant a NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Podeu especificar quins llocs web poden executar seqüències. El tipus d'adreça o el domini (p.ex. "http://www.site.com" o "site.com") del lloc al qual voleu donar permissos i feu clic a Permet.">
 <!ENTITY noscriptWebAddress "Adreça del lloc web:">
 <!ENTITY noscriptAllow "Permet">
diff --git a/chrome/noscript.jar!/locale/cs-CZ/noscript/noscript.dtd b/chrome/noscript.jar!/locale/cs-CZ/noscript/noscript.dtd
index d21db1c..1f83df2 100644
--- a/chrome/noscript.jar!/locale/cs-CZ/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/cs-CZ/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Nastavení...">
 <!ENTITY noscriptOptions.accesskey "N">
 <!ENTITY noscriptOptionsLong "Nastavení NoScript">
-<!ENTITY noscriptAbout "O rozšíření NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "O rozšíření NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Můžete si zvolit, které webové stránky mají povoleno spouštět skripty. Zadejte adresu (např. http://www.site.com nebo site.com) na které se nachází stránka, pro kterou chcete skripty povolit a klepněte na Povolit.">
 <!ENTITY noscriptWebAddress "Adresa webové stránky:">
 <!ENTITY noscriptAllow "Povolit">
diff --git a/chrome/noscript.jar!/locale/cy-GB/noscript/noscript.dtd b/chrome/noscript.jar!/locale/cy-GB/noscript/noscript.dtd
index fa32439..60e78ad 100644
--- a/chrome/noscript.jar!/locale/cy-GB/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/cy-GB/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opsiynau">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opsiynau NoScript">
-<!ENTITY noscriptAbout "Yngylch NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Yngylch NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Cewch enwi pa wefannau sy'n cael rhedeg sgriptiau. Teipiwch gyfeiriad neu barth (e.e. "http://www.site.com" neu "site.com") y safle rydych eisiau ei ganiatau ac wedyn cliciwch Caniatau.">
 <!ENTITY noscriptWebAddress "Cyfeiriad wefan">
 <!ENTITY noscriptAllow "Caniatau">
diff --git a/chrome/noscript.jar!/locale/da/noscript/noscript.dtd b/chrome/noscript.jar!/locale/da/noscript/noscript.dtd
index f83d52c..0e429a7 100644
--- a/chrome/noscript.jar!/locale/da/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/da/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Indstillinger…">
 <!ENTITY noscriptOptions.accesskey "I">
 <!ENTITY noscriptOptionsLong "NoScript Indstillinger">
-<!ENTITY noscriptAbout "Om NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Om NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Du kan angive hvilke websteder der må udføre scripts. Indtast adresse eller domæne (f.eks. "http://www.site.com" eller "site.com") på det websted du ønsker at tillade og klik på Tillad.">
 <!ENTITY noscriptWebAddress "Webstedets adresse:">
 <!ENTITY noscriptAllow "Tillad">
diff --git a/chrome/noscript.jar!/locale/de/noscript/noscript.dtd b/chrome/noscript.jar!/locale/de/noscript/noscript.dtd
index 6dee65c..783e728 100644
--- a/chrome/noscript.jar!/locale/de/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/de/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Einstellungen…">
 <!ENTITY noscriptOptions.accesskey "E">
 <!ENTITY noscriptOptionsLong "NoScript - Einstellungen">
-<!ENTITY noscriptAbout "Über NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Über NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Sie können festlegen, welchen Websites Sie das Ausführen von Skripten erlauben möchten. Geben Sie bitte die exakte Adresse oder die Domain der Website ein (z.B. "http://www.site.com" oder "site.com"), für die Sie dies zulassen möchten, und klicken Sie dann auf "Erlauben".">
 <!ENTITY noscriptWebAddress "Adresse der Website:">
 <!ENTITY noscriptAllow "Erlauben">
diff --git a/chrome/noscript.jar!/locale/el/noscript/noscript.dtd b/chrome/noscript.jar!/locale/el/noscript/noscript.dtd
index e1bf8a4..39773d4 100644
--- a/chrome/noscript.jar!/locale/el/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/el/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Επιλογές">
 <!ENTITY noscriptOptions.accesskey "Ε">
 <!ENTITY noscriptOptionsLong "Επιλογές NoScript">
-<!ENTITY noscriptAbout "Περί NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Περί NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Μπορείτε να καθορίσετε για ποιους ιστότοπους θα επιτρέπεται η εκτέλεση σεναρίων εντολών. Πληκτρολογήστε τη διεύθυνση τομέα (πχ. "http://www.site.com" or "site.com") του ιστότοπου που θέλετε και μετά κάντε κλικ στο «Να επιτρέπεται»">
 <!ENTITY noscriptWebAddress "Διεύθυνση ιστότοπου">
 <!ENTITY noscriptAllow "Να επιτρέπεται">
diff --git a/chrome/noscript.jar!/locale/en-GB/noscript/noscript.dtd b/chrome/noscript.jar!/locale/en-GB/noscript/noscript.dtd
index 890a2e2..17952f8 100644
--- a/chrome/noscript.jar!/locale/en-GB/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/en-GB/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "About NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/noscript.jar!/locale/en-US/noscript/noscript.dtd b/chrome/noscript.jar!/locale/en-US/noscript/noscript.dtd
index f7e51ed..45d822f 100644
--- a/chrome/noscript.jar!/locale/en-US/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/en-US/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "About NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/noscript.jar!/locale/eo/noscript/noscript.dtd b/chrome/noscript.jar!/locale/eo/noscript/noscript.dtd
index f1d68e5..3d8d611 100644
--- a/chrome/noscript.jar!/locale/eo/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/eo/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcioj…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcioj de NoScript">
-<!ENTITY noscriptAbout "Pri NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Pri NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Vi povas specifi, kiuj ttt-ejoj rajtu plenumigi skriptojn. Entajpu la adreson aŭ la domajnonomon (ekz. “http://www.retejo.org” aŭ “retejo.org”) de la ttt-ejo, kiun vi volas rajtigi, kaj poste alklaku “Rajtigi”.">
 <!ENTITY noscriptWebAddress "Adreso de retpaĝaro:">
 <!ENTITY noscriptAllow "Rajtigi">
diff --git a/chrome/noscript.jar!/locale/es-AR/noscript/noscript.dtd b/chrome/noscript.jar!/locale/es-AR/noscript/noscript.dtd
index 323683c..179f257 100644
--- a/chrome/noscript.jar!/locale/es-AR/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/es-AR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opciones…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opciones de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Puede especificar a cuáles sitios web le permitirá ejecutar scripts. Escriba la dirección o el dominio (por ejemplo, "http://www.sitio.com" o "sitio.com") del sitio y luego haga clic en Permitir.">
 <!ENTITY noscriptWebAddress "Dirección del sitio web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/noscript.jar!/locale/es-CL/noscript/noscript.dtd b/chrome/noscript.jar!/locale/es-CL/noscript/noscript.dtd
index d9cb345..35537b4 100644
--- a/chrome/noscript.jar!/locale/es-CL/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/es-CL/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opciones de NoScript">
-<!ENTITY noscriptAbout "About NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "About NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/noscript.jar!/locale/es-ES/noscript/noscript.dtd b/chrome/noscript.jar!/locale/es-ES/noscript/noscript.dtd
index 340239d..9e55617 100644
--- a/chrome/noscript.jar!/locale/es-ES/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/es-ES/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opciones…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Configuración de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Aquí puede especificar las páginas web a las que va a permitir ejecutar código JavaScript. Escriba la dirección de la web que quiera incluir (ej. "http://www.paginaweb.com" o "paginaweb.com") y después pulse "Permitir".">
 <!ENTITY noscriptWebAddress "Dirección de la página web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/noscript.jar!/locale/et-EE/noscript/noscript.dtd b/chrome/noscript.jar!/locale/et-EE/noscript/noscript.dtd
index 4ec9231..9e81f99 100644
--- a/chrome/noscript.jar!/locale/et-EE/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/et-EE/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Sätted…">
 <!ENTITY noscriptOptions.accesskey "S">
 <!ENTITY noscriptOptionsLong "NoScripti sätted">
-<!ENTITY noscriptAbout "Täpsemalt lisast NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Täpsemalt lisast NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Sa saad määrata, millistel veebilehtedel lubatakse skripte käivitada. Kirjuta veebilehe aadress või domeeni, mida soovid lubada (nt "http://www.site.com" või "site.com") ja klõpsa Luba nuppu">
 <!ENTITY noscriptWebAddress "Veebilehe aadress:">
 <!ENTITY noscriptAllow "Luba">
diff --git a/chrome/noscript.jar!/locale/eu/noscript/noscript.dtd b/chrome/noscript.jar!/locale/eu/noscript/noscript.dtd
index 25185c7..dbda2be 100644
--- a/chrome/noscript.jar!/locale/eu/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/eu/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Aukerak:">
 <!ENTITY noscriptOptions.accesskey "A">
 <!ENTITY noscriptOptionsLong "NoScript aukerak">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26-eri buruz:">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27-eri buruz:">
 <!ENTITY noscriptPermissionsText "Zein webgunek script-ak exekuta ditzakeen zehaztu dezakezu. Idatzi script-ak erabiltzea onartzea nahi duzun domeinuaren izena (adib. "http://www.gunea.org" or "gunea.org") eta Onartu sakatu.">
 <!ENTITY noscriptWebAddress "Webgunearen helbidea:">
 <!ENTITY noscriptAllow "Onartu">
diff --git a/chrome/noscript.jar!/locale/fa-IR/noscript/noscript.dtd b/chrome/noscript.jar!/locale/fa-IR/noscript/noscript.dtd
index 30e1fcc..f256231 100644
--- a/chrome/noscript.jar!/locale/fa-IR/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/fa-IR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "تنظیمات...">
 <!ENTITY noscriptOptions.accesskey "ت">
 <!ENTITY noscriptOptionsLong "تنظیمات NoScript">
-<!ENTITY noscriptAbout "درباره NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "درباره NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "شما می توانید سایت هایی را که اجازه اجرای اسکریپت دارند را مشخص کنید.آدرس سایت یا نام دامنه را وارد کنید.(به عنوان مثال "http://www.site.com" یا "site.com")">
 <!ENTITY noscriptWebAddress "آدرس وب سایت :">
 <!ENTITY noscriptAllow "اجازه دادن">
diff --git a/chrome/noscript.jar!/locale/fi/noscript/noscript.dtd b/chrome/noscript.jar!/locale/fi/noscript/noscript.dtd
index dff207a..7542f32 100644
--- a/chrome/noscript.jar!/locale/fi/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/fi/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Asetukset…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript asetukset">
-<!ENTITY noscriptAbout "Tietoja NoScript 2.6.9.26istä…">
+<!ENTITY noscriptAbout "Tietoja NoScript 2.6.9.27istä…">
 <!ENTITY noscriptPermissionsText "Voit määrittää verkkosivut joiden sallitaan suorittaa scriptejä. Kirjoita verkko-osoite tai verkkonimi (esim. "http://www.site.com" tai "site.com") jonka haluat sallia ja paina Salli.">
 <!ENTITY noscriptWebAddress "Verkkosivun osoite:">
 <!ENTITY noscriptAllow "Salli">
diff --git a/chrome/noscript.jar!/locale/fr/noscript/noscript.dtd b/chrome/noscript.jar!/locale/fr/noscript/noscript.dtd
index f0dde28..b9d8c41 100644
--- a/chrome/noscript.jar!/locale/fr/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/fr/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Options de NoScript">
-<!ENTITY noscriptAbout "À propos de NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "À propos de NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Il est possible de spécifier quels sites Web sont autorisés à exécuter des scripts. Saisissez l'adresse exacte du site que vous désirez autoriser puis cliquez sur Autoriser.">
 <!ENTITY noscriptWebAddress "Adresse du site Web :">
 <!ENTITY noscriptAllow "Autoriser">
diff --git a/chrome/noscript.jar!/locale/gl-ES/noscript/noscript.dtd b/chrome/noscript.jar!/locale/gl-ES/noscript/noscript.dtd
index ae85bef..544878a 100644
--- a/chrome/noscript.jar!/locale/gl-ES/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/gl-ES/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcións...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcións de NoScript">
-<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Acerca de NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Podes especificar que páxinas web poden executar scripts. Teclea o enderezo ou o dominio (por exemplo "http://www.paxina.com" ou "paxina.com") do sitio que queres autorizar e despois preme en "Permitir".">
 <!ENTITY noscriptWebAddress "Enderezo web:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/noscript.jar!/locale/he-IL/noscript/noscript.dtd b/chrome/noscript.jar!/locale/he-IL/noscript/noscript.dtd
index dfdb76d..5d0e47a 100644
--- a/chrome/noscript.jar!/locale/he-IL/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/he-IL/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "הגדרות...">
 <!ENTITY noscriptOptions.accesskey "">
 <!ENTITY noscriptOptionsLong "NoScript הגדרות של">
-<!ENTITY noscriptAbout "אודות NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "אודות NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "ציין אילו אתרים יכולים לקבל היתר להפעלת קבצי Script. הקלד את כתובת האתר או את שם התחום (כגון: "http://www.site.com" או "site.com") ולאחר מכן לחץ על התר.">
 <!ENTITY noscriptWebAddress "כתובת/תחום:">
 <!ENTITY noscriptAllow "התר">
diff --git a/chrome/noscript.jar!/locale/hr-HR/noscript/noscript.dtd b/chrome/noscript.jar!/locale/hr-HR/noscript/noscript.dtd
index f12f924..2b4fadf 100644
--- a/chrome/noscript.jar!/locale/hr-HR/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/hr-HR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcije...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Opcije">
-<!ENTITY noscriptAbout "O NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "O NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Možete odrediti koje web stranice imaju dopuštenje za izvođenje skripti. Upišite adresu ili domenu (npr. "http://www.stranica.hr" ili "stranica.hr") stranice kojoj želite dopustiti i kliknite na Dopusti.">
 <!ENTITY noscriptWebAddress "Adresa web stranice:">
 <!ENTITY noscriptAllow "Dopusti">
diff --git a/chrome/noscript.jar!/locale/hsb/noscript/noscript.dtd b/chrome/noscript.jar!/locale/hsb/noscript/noscript.dtd
index 4e6b0d1..ca33fde 100644
--- a/chrome/noscript.jar!/locale/hsb/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/hsb/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opcije…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opcije NoScript">
-<!ENTITY noscriptAbout "Wo NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Wo NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Móžeće podać, kotre websydła smědźa skripty wuwjesć. Zapisajće adresu abo domenu  (na př. "http://www.site.com" abo "site.com") websydła, kotremuž chceće to dowolić a klikńće potom na "Dowolić".">
 <!ENTITY noscriptWebAddress "Adresa websydła:">
 <!ENTITY noscriptAllow "Dowolić">
diff --git a/chrome/noscript.jar!/locale/hu-HU/noscript/noscript.dtd b/chrome/noscript.jar!/locale/hu-HU/noscript/noscript.dtd
index 0201323..373680e 100644
--- a/chrome/noscript.jar!/locale/hu-HU/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/hu-HU/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Beállítások…">
 <!ENTITY noscriptOptions.accesskey "B">
 <!ENTITY noscriptOptionsLong "A NoScript beállításai">
-<!ENTITY noscriptAbout "A NoScript 2.6.9.26 névjegye">
+<!ENTITY noscriptAbout "A NoScript 2.6.9.27 névjegye">
 <!ENTITY noscriptPermissionsText "Megadhatja, hogy mely webhelyek számára engedélyezi a parancsfájlok futtatását. Írja be az engedélyezni kívánt webhely címét vagy tartomány nevét (pl. "http://www.webhely.hu" vagy "webhely.hu"), majd kattintson az Engedélyezés gombra.">
 <!ENTITY noscriptWebAddress "A webhely címe:">
 <!ENTITY noscriptAllow "Engedélyezés">
diff --git a/chrome/noscript.jar!/locale/id-ID/noscript/noscript.dtd b/chrome/noscript.jar!/locale/id-ID/noscript/noscript.dtd
index 1ce243c..79913f4 100644
--- a/chrome/noscript.jar!/locale/id-ID/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/id-ID/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Pilihan...">
 <!ENTITY noscriptOptions.accesskey "P">
 <!ENTITY noscriptOptionsLong "Pilihan NoScript">
-<!ENTITY noscriptAbout "Tentang NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Tentang NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Anda dapat menentukan situs web mana yang diijinkan menjalankan naskah. Masukkan alamat atau domain (contoh: "http://www.site.com" atau "site.com") yang akan diberi ijin kemudian klik Ijinkan.">
 <!ENTITY noscriptWebAddress "Alamat situs web:">
 <!ENTITY noscriptAllow "Ijinkan">
diff --git a/chrome/noscript.jar!/locale/it/noscript/noscript.dtd b/chrome/noscript.jar!/locale/it/noscript/noscript.dtd
index 74219d7..660c96d 100644
--- a/chrome/noscript.jar!/locale/it/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/it/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opzioni…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opzioni NoScript">
-<!ENTITY noscriptAbout "Informazioni su NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Informazioni su NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Qui si possono indicare i siti per i quali l'esecuzione degli script è consentita. Digitare l'indirizzo o il dominio (es. "http://www.sito.com" oppure "sito.com")  e fare clic su Permetti.">
 <!ENTITY noscriptWebAddress "Indirizzo del sito:">
 <!ENTITY noscriptAllow "Permetti">
diff --git a/chrome/noscript.jar!/locale/ja-JP/noscript/noscript.dtd b/chrome/noscript.jar!/locale/ja-JP/noscript/noscript.dtd
index 894087b..aca9abc 100644
--- a/chrome/noscript.jar!/locale/ja-JP/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/ja-JP/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "オプション...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript オプション">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26について...">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27について...">
 <!ENTITY noscriptPermissionsText "JavaScriptを許可するサイトを指定する事ができます。許可したいサイトのアドレスかドメインを入力して、ボタンを押してください。(例: "http://www.site.com" または "site.com")">
 <!ENTITY noscriptWebAddress "ウェブサイトのアドレス:">
 <!ENTITY noscriptAllow "許可する">
diff --git a/chrome/noscript.jar!/locale/kk-KZ/noscript/noscript.dtd b/chrome/noscript.jar!/locale/kk-KZ/noscript/noscript.dtd
index bf152b9..bb4347c 100644
--- a/chrome/noscript.jar!/locale/kk-KZ/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/kk-KZ/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Баптаулары">
 <!ENTITY noscriptOptions.accesskey "Б">
 <!ENTITY noscriptOptionsLong "NoScript баптаулары">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26 туралы...">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27 туралы...">
 <!ENTITY noscriptPermissionsText "Қай сайттарға JavaScript орындауға рұқсат екенін көрсете аласыз. Рұқсат етілетін сайттың домен адресін енгізіңіз (мысалы, "http://www.site.com" немесе "site.com"), содан кейін Рұқсат ету басыңыз.">
 <!ENTITY noscriptWebAddress "Веб-сайт адресі:">
 <!ENTITY noscriptAllow "Рұқсат ету">
diff --git a/chrome/noscript.jar!/locale/km-KH/noscript/noscript.dtd b/chrome/noscript.jar!/locale/km-KH/noscript/noscript.dtd
index 29a98d8..ccbf18c 100644
--- a/chrome/noscript.jar!/locale/km-KH/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/km-KH/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "About NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/noscript.jar!/locale/ko-KR/noscript/noscript.dtd b/chrome/noscript.jar!/locale/ko-KR/noscript/noscript.dtd
index d1e2b7f..6a42193 100644
--- a/chrome/noscript.jar!/locale/ko-KR/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/ko-KR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "옵션...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 옵션">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26 정보...">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27 정보...">
 <!ENTITY noscriptPermissionsText "스크립트 실행을 허용할 웹 사이트를 지정할 수 있습니다. 스크립트를 허용할 사이트의 주소나 도메인 (예를 들면, "http://www.site.com" 또는 "site.com")을 입력한 후 [허용] 버튼을 클릭합니다.">
 <!ENTITY noscriptWebAddress "웹 사이트 주소">
 <!ENTITY noscriptAllow "허용">
diff --git a/chrome/noscript.jar!/locale/lt/noscript/noscript.dtd b/chrome/noscript.jar!/locale/lt/noscript/noscript.dtd
index 6bc98ff..74288ab 100644
--- a/chrome/noscript.jar!/locale/lt/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/lt/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Nuostatos...">
 <!ENTITY noscriptOptions.accesskey "N">
 <!ENTITY noscriptOptionsLong "NoScript nuostatos">
-<!ENTITY noscriptAbout "Apie NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Apie NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Jūs galite nurodyti, kurioms interneto svetainėms suteikiamas leidimas vykdyti programinius kodus. Įveskite adresą arba domeną (pvz., "http://www.svetaine.lt" arba "svetaine.lt") svetainės, kuriai norite suteikti leidimą ir spauskite Leisti.">
 <!ENTITY noscriptWebAddress "Interneto svetainės adresas:">
 <!ENTITY noscriptAllow "Leisti">
diff --git a/chrome/noscript.jar!/locale/mk-MK/noscript/noscript.dtd b/chrome/noscript.jar!/locale/mk-MK/noscript/noscript.dtd
index df749b8..3296dd3 100644
--- a/chrome/noscript.jar!/locale/mk-MK/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/mk-MK/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Опции...">
 <!ENTITY noscriptOptions.accesskey "О">
 <!ENTITY noscriptOptionsLong "NoScript Опции">
-<!ENTITY noscriptAbout "За NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "За NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Можете да ги назначите страните, на кои што скриптите ќе бидат дозволени. Напишете ја дозволената адреса (на пример http://www.site.com или site.com) и кликнете „Дозволи“">
 <!ENTITY noscriptWebAddress "Адреса на дозволената веб страна:">
 <!ENTITY noscriptAllow "Дозволи">
diff --git a/chrome/noscript.jar!/locale/ms-MY/noscript/noscript.dtd b/chrome/noscript.jar!/locale/ms-MY/noscript/noscript.dtd
index 5c84b91..feb8135 100644
--- a/chrome/noscript.jar!/locale/ms-MY/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/ms-MY/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Tetapan...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Tetapan NoScript">
-<!ENTITY noscriptAbout "Tentang NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Tentang NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Anda boleh menentukan laman web yang anda benarkan skripnya diproses. Taipkan alamat atau domain(contoh:"http://www.tapak.com" atau "tapak.com") laman web yang diingini dan klik Benarkan">
 <!ENTITY noscriptWebAddress "Alamat laman web:">
 <!ENTITY noscriptAllow "Benarkan">
diff --git a/chrome/noscript.jar!/locale/nb-NO/noscript/noscript.dtd b/chrome/noscript.jar!/locale/nb-NO/noscript/noscript.dtd
index f0972e9..01edb37 100644
--- a/chrome/noscript.jar!/locale/nb-NO/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/nb-NO/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Innstillinger">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Innstillinger">
-<!ENTITY noscriptAbout "Om NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Om NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Du kan spesifisere hvilke websider som har tillatelse til å kjøre scritper. Skriv inn adresse, eller domene (F.eks: "http://www.side.no", eller &quotside.no") du ønsker å gi tillatelse til, og klikk Tillat.">
 <!ENTITY noscriptWebAddress "Webadresse:">
 <!ENTITY noscriptAllow "Tillat">
diff --git a/chrome/noscript.jar!/locale/nl/noscript/noscript.dtd b/chrome/noscript.jar!/locale/nl/noscript/noscript.dtd
index 70d8886..d0b477f 100644
--- a/chrome/noscript.jar!/locale/nl/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/nl/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opties...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript opties">
-<!ENTITY noscriptAbout "Over NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Over NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Webadressen in deze lijst hebben toestemming om JavaScript te gebruiken. Type het adres of domein in (bijv. "http://www.site.com" of "site.com") van de door u toegestane site; klik daarna op Toestaan.">
 <!ENTITY noscriptWebAddress "Webadres:">
 <!ENTITY noscriptAllow "Toestaan">
diff --git a/chrome/noscript.jar!/locale/pl/noscript/noscript.dtd b/chrome/noscript.jar!/locale/pl/noscript/noscript.dtd
index 45752ab..dcb3c58 100644
--- a/chrome/noscript.jar!/locale/pl/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/pl/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Ustawienia">
 <!ENTITY noscriptOptions.accesskey "U">
 <!ENTITY noscriptOptionsLong "NoScript – ustawienia">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26 – informacje">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27 – informacje">
 <!ENTITY noscriptPermissionsText "Tutaj można określić witryny internetowe, które będą mogły uruchamiać skrypty. Proszę wprowadzić adres lub domenę witryny (np: „http://www.witryna.pl” lub „witryna.pl”) i nacisnąć przycisk Pozwól.">
 <!ENTITY noscriptWebAddress "Adres witryny:">
 <!ENTITY noscriptAllow "Pozwól">
diff --git a/chrome/noscript.jar!/locale/pt-BR/noscript/noscript.dtd b/chrome/noscript.jar!/locale/pt-BR/noscript/noscript.dtd
index 3e4f883..acfd3c5 100644
--- a/chrome/noscript.jar!/locale/pt-BR/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/pt-BR/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opções">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opções do NoScript">
-<!ENTITY noscriptAbout "Sobre o NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "Sobre o NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "Você pode especificar os sites que podem executar JavaScripts. Escreva o endereço ou o domínio (ex "http://www.site.com" ou "site.com") do site que deseja permitir e depois clique em Permitir.">
 <!ENTITY noscriptWebAddress "Endereço:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/noscript.jar!/locale/pt-PT/noscript/noscript.dtd b/chrome/noscript.jar!/locale/pt-PT/noscript/noscript.dtd
index 77b5b23..951fe5c 100644
--- a/chrome/noscript.jar!/locale/pt-PT/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/pt-PT/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opções">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opções do NoScript">
-<!ENTITY noscriptAbout "Sobre o NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Sobre o NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Pode especificar os sítios que podem executar scripts. Escreva o endereço ou o domínio (ex: "http://www.sitio.com" ou "sitio.com") do sítio que deseja permitir e depois pressione em Permitir.">
 <!ENTITY noscriptWebAddress "Endereço:">
 <!ENTITY noscriptAllow "Permitir">
diff --git a/chrome/noscript.jar!/locale/ro/noscript/noscript.dtd b/chrome/noscript.jar!/locale/ro/noscript/noscript.dtd
index f88ee6f..9c7b9d9 100644
--- a/chrome/noscript.jar!/locale/ro/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/ro/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Opțiuni...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "Opțiuni NoScript">
-<!ENTITY noscriptAbout "Despre NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Despre NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Puteți specifica saiturile cărora li se permite să execute scripturi. Scrieți adresa sau domeniul paginii (exemplu: „http://www.sait.ro“ sau „sait.ro“), apoi apăsați pe butonul „Permite“.">
 <!ENTITY noscriptWebAddress "Adresă sait:">
 <!ENTITY noscriptAllow "Permite">
diff --git a/chrome/noscript.jar!/locale/sk-SK/noscript/noscript.dtd b/chrome/noscript.jar!/locale/sk-SK/noscript/noscript.dtd
index 8195cfa..b301cc2 100644
--- a/chrome/noscript.jar!/locale/sk-SK/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/sk-SK/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Možnosti...">
 <!ENTITY noscriptOptions.accesskey "M">
 <!ENTITY noscriptOptionsLong "NoScript – Možnosti">
-<!ENTITY noscriptAbout "O rozšírení NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "O rozšírení NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Môžete určiť, ktoré webové stránky majú povolené spúšťať JavaScript. Zadajte adresu alebo doménu (napríklad "http://www.site.com" alebo "site.com") stránky, ktorú chcete povoliť, a potom kliknite na tlačidlo Povoliť.">
 <!ENTITY noscriptWebAddress "Adresa webovej stránky:">
 <!ENTITY noscriptAllow "Povoliť">
diff --git a/chrome/noscript.jar!/locale/sl-SI/noscript/noscript.dtd b/chrome/noscript.jar!/locale/sl-SI/noscript/noscript.dtd
index cbc9113..36cc477 100644
--- a/chrome/noscript.jar!/locale/sl-SI/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/sl-SI/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Možnosti...">
 <!ENTITY noscriptOptions.accesskey "M">
 <!ENTITY noscriptOptionsLong "NoScript Možnosti">
-<!ENTITY noscriptAbout "O NoScript 2.6.9.26 programu...">
+<!ENTITY noscriptAbout "O NoScript 2.6.9.27 programu...">
 <!ENTITY noscriptPermissionsText "Določite lahko na katerih straneh bo izvajanje skript dovoljeno. Vnesite naslov ali domeno (pr. "http://www.domena.com" or "domena.com") strani, na kateri želite omogočiti izvajanje skript in kliknite Dovoli.">
 <!ENTITY noscriptWebAddress "Naslov strani:">
 <!ENTITY noscriptAllow "Dovoli">
diff --git a/chrome/noscript.jar!/locale/sr-RS/noscript/noscript.dtd b/chrome/noscript.jar!/locale/sr-RS/noscript/noscript.dtd
index 0f6eebf..83814bb 100644
--- a/chrome/noscript.jar!/locale/sr-RS/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/sr-RS/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Подешавања...">
 <!ENTITY noscriptOptions.accesskey "П">
 <!ENTITY noscriptOptionsLong "NoScript подешавања">
-<!ENTITY noscriptAbout "О NoScript 2.6.9.26-у">
+<!ENTITY noscriptAbout "О NoScript 2.6.9.27-у">
 <!ENTITY noscriptPermissionsText "Можете да наведете којим веб странама је дозвољено да извршавају скриптове. Унесите адресу или домен (нпр. "http://www.site.com" или "site.com") стране којој желите да дате дозволу и онда кликните Дозволи.">
 <!ENTITY noscriptWebAddress "Адреса веб стране:">
 <!ENTITY noscriptAllow "Дозволи">
diff --git a/chrome/noscript.jar!/locale/sv-SE/noscript/noscript.dtd b/chrome/noscript.jar!/locale/sv-SE/noscript/noscript.dtd
index a3f8dbe..6b6670f 100644
--- a/chrome/noscript.jar!/locale/sv-SE/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/sv-SE/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Alternativ...">
 <!ENTITY noscriptOptions.accesskey "A">
 <!ENTITY noscriptOptionsLong "NoScript-alternativ">
-<!ENTITY noscriptAbout "Om NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Om NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Ange vilka webbplatser som får köra skript. Skriv webbadressen eller domänen (t ex. "http://www.webbplats.se" eller "webbplats.se") för den webbplats där skript ska tillåtas. Klicka sedan på "Tillåt".">
 <!ENTITY noscriptWebAddress "Sidans adress:">
 <!ENTITY noscriptAllow "Tillåt">
diff --git a/chrome/noscript.jar!/locale/te-IN/noscript/noscript.dtd b/chrome/noscript.jar!/locale/te-IN/noscript/noscript.dtd
index e2e16e2..5f88410 100644
--- a/chrome/noscript.jar!/locale/te-IN/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/te-IN/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Options…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript Options">
-<!ENTITY noscriptAbout "About NoScript 2.6.9.26…">
+<!ENTITY noscriptAbout "About NoScript 2.6.9.27…">
 <!ENTITY noscriptPermissionsText "You can specify which web sites are allowed to execute scripts. Type the address or the domain (e.g. "http://www.site.com" or "site.com") of the site you want to allow and then click Allow.">
 <!ENTITY noscriptWebAddress "Address of web site:">
 <!ENTITY noscriptAllow "Allow">
diff --git a/chrome/noscript.jar!/locale/th/noscript/noscript.dtd b/chrome/noscript.jar!/locale/th/noscript/noscript.dtd
index 96bde91..fced224 100644
--- a/chrome/noscript.jar!/locale/th/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/th/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "ตัวเลือก...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "ตัวเลือก NoScript">
-<!ENTITY noscriptAbout "เกี่ยวกับ NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "เกี่ยวกับ NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "คุณสามารถกำหนดเว็บไซต์ที่จะอนุญาตดำเนินการสคริปต์ พิมพ์ที่อยู่หรือโดเมน (เช่น "http://www.site.com" หรือ "site.com") ของไซต์ที่คุณต้องการอนุญาตและคลิกอนุญาต">
 <!ENTITY noscriptWebAddress "ที่อยู่เว็บไซต์:">
 <!ENTITY noscriptAllow "อนุญาต">
diff --git a/chrome/noscript.jar!/locale/tr/noscript/noscript.dtd b/chrome/noscript.jar!/locale/tr/noscript/noscript.dtd
index 462df29..716adc2 100644
--- a/chrome/noscript.jar!/locale/tr/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/tr/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Seçenekler">
 <!ENTITY noscriptOptions.accesskey "S">
 <!ENTITY noscriptOptionsLong "NoScript Seçenekleri">
-<!ENTITY noscriptAbout "NoScript 2.6.9.26 Hakkında">
+<!ENTITY noscriptAbout "NoScript 2.6.9.27 Hakkında">
 <!ENTITY noscriptPermissionsText "Hangi web sayfalarında JavaScript'e izni vereceğinizi kolayca seçebilirsiniz. Lütfen adresi tam olarak girin ve 'İzin ver' düğmesine tıklayarak sayfanın JavaScript kullanmasına izin verin.">
 <!ENTITY noscriptWebAddress "Site adresi:">
 <!ENTITY noscriptAllow "İzin ver">
diff --git a/chrome/noscript.jar!/locale/vi/noscript/noscript.dtd b/chrome/noscript.jar!/locale/vi/noscript/noscript.dtd
index 8cc3628..5984137 100644
--- a/chrome/noscript.jar!/locale/vi/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/vi/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "Tùy chọn">
 <!ENTITY noscriptOptions.accesskey "y">
 <!ENTITY noscriptOptionsLong "Tùy chọn cho NoScript">
-<!ENTITY noscriptAbout "Thông tin về NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "Thông tin về NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "Bạn có thể chỉ định trang web nào được phép chạy script. Gõ địa chỉ hay tên miền (v.d. "http://www.nhaccodien.com" hay "nhaccodien.com") của trang mà bạn muốn cho phép, rồi nhấn Cho phép.">
 <!ENTITY noscriptWebAddress "Địa chỉ của trang web:">
 <!ENTITY noscriptAllow "Cho phép">
diff --git a/chrome/noscript.jar!/locale/zh-CN/noscript/noscript.dtd b/chrome/noscript.jar!/locale/zh-CN/noscript/noscript.dtd
index 9ecbf4f..5d42f41 100644
--- a/chrome/noscript.jar!/locale/zh-CN/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/zh-CN/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "选项...">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 选项">
-<!ENTITY noscriptAbout "关于 NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "关于 NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "您可以指定允许执行脚本的网站。请输入您想要允许的网站地址或域名(例如: “http://www.site.com”或者“site.com”)然后单击“允许”。">
 <!ENTITY noscriptWebAddress "网站地址:">
 <!ENTITY noscriptAllow "允许">
diff --git a/chrome/noscript.jar!/locale/zh-TW/noscript/noscript.dtd b/chrome/noscript.jar!/locale/zh-TW/noscript/noscript.dtd
index 9b323ce..7b286b6 100644
--- a/chrome/noscript.jar!/locale/zh-TW/noscript/noscript.dtd
+++ b/chrome/noscript.jar!/locale/zh-TW/noscript/noscript.dtd
@@ -1,7 +1,7 @@
 <!ENTITY noscriptOptions "選項…">
 <!ENTITY noscriptOptions.accesskey "O">
 <!ENTITY noscriptOptionsLong "NoScript 選項">
-<!ENTITY noscriptAbout "關於 NoScript 2.6.9.26">
+<!ENTITY noscriptAbout "關於 NoScript 2.6.9.27">
 <!ENTITY noscriptPermissionsText "您可以指定允許執行 JavaScript 的網站。輸入您要允許的網址或網域(例如 "http://www.site.com" 或 "site.com"),然後按下允許.">
 <!ENTITY noscriptWebAddress "網址:">
 <!ENTITY noscriptAllow "允許">
diff --git a/components/noscriptService.js b/components/noscriptService.js
index fd2d3ab..2863720 100644
--- a/components/noscriptService.js
+++ b/components/noscriptService.js
@@ -1,5 +1,5 @@
 // const TIME0 = Date.now();
-const VERSION = "2.6.9.26";
+const VERSION = "2.6.9.27";
 const SERVICE_CTRID = "@maone.net/noscript-service;1";
 const SERVICE_ID = "{31aec909-8e86-4397-9380-63a59e0c5ff5}";
 const EXTENSION_ID = "{73a6fe31-595d-460b-a920-fcc0f8843232}";
@@ -2019,9 +2019,8 @@ var ns = {
 
 
   onVersionChanged: function(prev) {
-    if (!this.getPref("allowWhitelistUpdates")) {
-      return;
-    }
+    let removalsOnly = !this.getPref("allowWhitelistUpdates");
+
     // update hacks
     var versions = {
       "2.1.1.2rc6": {
@@ -2054,7 +2053,10 @@ var ns = {
       },
       "2.6.9.22rc1": {
         "prototypejs.org": "bootstrapcdn.com" // Used by many sites, mostly for styles and fonts
-      }
+      },
+      "2.6.9.27": {
+        "!vjs.zendcdn.net": "" // removal
+      },
     };
 
     for (let v in versions) {
@@ -2065,8 +2067,10 @@ var ns = {
           let replace = site[0] === "!";
           if (replace) site = site.substring(1);
           if (this.isJSEnabled(site)) {
-            this.jsPolicySites.remove(newSite, true, false);
-            this.setJSEnabled(newSite, true);
+            if (newSite[0]) {
+              this.jsPolicySites.remove(newSite, true, false);
+              this.setJSEnabled(newSite, true);
+            }
             if (replace) this.jsPolicySites.remove(site, true, false);
           }
         }
@@ -5493,6 +5497,8 @@ var ns = {
 
     const ph = PolicyState.detach(oldChan);
 
+    var browser;
+
     if (ph) {
       // 0: aContentType, 1: aContentLocation, 2: aRequestOrigin, 3: aContext, 4: aMimeTypeGuess, 5: aInternalCall
 
@@ -5508,13 +5514,17 @@ var ns = {
         ph.mimeType = newChan.contentType || oldChan.contentType || ph.mimeType;
       } catch(e) {}
 
-      var browser, win;
+
+      let win;
+      try {
+        win = IOUtil.findWindow(newChan);
+      } catch (e) {}
 
       switch(type) {
         case 2: case 9: // script redirection? cache site for menu
           try {
             var site = this.getSite(uri.spec);
-            win = IOUtil.findWindow(newChan) || ctx && ((ctx instanceof Ci.nsIDOMWindow) ? ctx : ctx.ownerDocument.defaultView);
+            if (!win) win = ctx && ((ctx instanceof Ci.nsIDOMWindow) ? ctx : ctx.ownerDocument.defaultView);
             browser = win && DOM.findBrowserForNode(win);
             if (browser) {
               this.getRedirCache(browser, win.top.document.documentURI)
diff --git a/defaults/preferences/noscript.js b/defaults/preferences/noscript.js
index 02212bc..bf54377 100644
--- a/defaults/preferences/noscript.js
+++ b/defaults/preferences/noscript.js
@@ -30,7 +30,7 @@ pref("noscript.showExternalFilters", true);
 pref("noscript.showTempAllowPage", true);
 pref("noscript.showAllowPage", true);
 pref("noscript.mandatory", "chrome: blob: mediasource: moz-safe-about: about: about:addons about:blocked about:crashes about:home about:config about:neterror about:certerror about:memory about:plugins about:preferences about:privatebrowsing about:sessionrestore about:support resource: about:srcdoc");
-pref("noscript.default", "about:blank addons.mozilla.org persona.org mozilla.net flashgot.net google.com gstatic.com googleapis.com paypal.com paypalobjects.com securecode.com securesuite.net firstdata.com firstdata.lv informaction.com yahoo.com yimg.com yahooapis.com youtube.com ytimg.com googlevideo.com maone.net noscript.net hotmail.com msn.com passport.com passport.net passportimages.com live.com live.net outlook.com afx.ms gfx.ms sfx.ms wlxrs.com ajax.aspnetcdn.com bootstrapcdn.com  [...]
+pref("noscript.default", "about:blank addons.mozilla.org persona.org mozilla.net flashgot.net google.com gstatic.com googleapis.com paypal.com paypalobjects.com securecode.com securesuite.net firstdata.com firstdata.lv informaction.com yahoo.com yimg.com yahooapis.com youtube.com ytimg.com googlevideo.com maone.net noscript.net hotmail.com msn.com passport.com passport.net passportimages.com live.com live.net outlook.com afx.ms gfx.ms sfx.ms wlxrs.com ajax.aspnetcdn.com bootstrapcdn.com  [...]
 
 pref("noscript.allowWhitelistUpdates", true);
 pref("noscript.volatilePrivatePermissions", false);
@@ -430,3 +430,4 @@ pref("noscript.ABE.migration", 0);
 pref("noscript.smartClickToPlay", true);
 
 pref("noscript.removalWarning", true);
+pref("noscript.middlemouse_temp_allow_main_site", true);
diff --git a/install.rdf b/install.rdf
index 7809da1..f2cfabb 100644
--- a/install.rdf
+++ b/install.rdf
@@ -5,7 +5,7 @@
 
    <em:id>{73a6fe31-595d-460b-a920-fcc0f8843232}</em:id>
    <em:name>NoScript</em:name>
-   <em:version>2.6.9.26</em:version>
+   <em:version>2.6.9.27</em:version>
    <em:description>Extra protection for your Firefox: NoScript allows JavaScript, Java (and other plugins) only for trusted domains of your choice (e.g. your home-banking web site). This whitelist based pre-emptive blocking approach  prevents exploitation of security vulnerabilities (known and even unknown!) with no loss of functionality... Experts will agree: Firefox is really safer with NoScript :-)</em:description>
    <em:creator>Giorgio Maone</em:creator>
    <em:type>2</em:type>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/noscript.git



More information about the Pkg-mozext-commits mailing list