| OLD | NEW | 
|---|
| 1 /* | 1 /* | 
| 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
| 3  * Copyright (C) 2006-2015 Eyeo GmbH | 3  * Copyright (C) 2006-2015 Eyeo GmbH | 
| 4  * | 4  * | 
| 5  * Adblock Plus is free software: you can redistribute it and/or modify | 5  * Adblock Plus is free software: you can redistribute it and/or modify | 
| 6  * it under the terms of the GNU General Public License version 3 as | 6  * it under the terms of the GNU General Public License version 3 as | 
| 7  * published by the Free Software Foundation. | 7  * published by the Free Software Foundation. | 
| 8  * | 8  * | 
| 9  * Adblock Plus is distributed in the hope that it will be useful, | 9  * Adblock Plus is distributed in the hope that it will be useful, | 
| 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 194   collectData: function(wnd, windowURI, callback) | 194   collectData: function(wnd, windowURI, callback) | 
| 195   { | 195   { | 
| 196     this.callback = callback; | 196     this.callback = callback; | 
| 197     this.requestNotifier = new RequestNotifier(wnd, this.onRequestFound, this); | 197     this.requestNotifier = new RequestNotifier(wnd, this.onRequestFound, this); | 
| 198   }, | 198   }, | 
| 199 | 199 | 
| 200   onRequestFound: function(frame, node, entry, scanComplete) | 200   onRequestFound: function(frame, node, entry, scanComplete) | 
| 201   { | 201   { | 
| 202     if (entry) | 202     if (entry) | 
| 203     { | 203     { | 
| 204       let key = entry.location + " " + entry.typeDescr + " " + entry.docDomain; | 204       let key = entry.location + " " + entry.type + " " + entry.docDomain; | 
| 205       let requestXML; | 205       let requestXML; | 
| 206       if (key in this.nodeByKey) | 206       if (key in this.nodeByKey) | 
| 207       { | 207       { | 
| 208         requestXML = this.nodeByKey[key]; | 208         requestXML = this.nodeByKey[key]; | 
| 209         requestXML.setAttribute("count", parseInt(requestXML.getAttribute("count
      "), 10) + 1); | 209         requestXML.setAttribute("count", parseInt(requestXML.getAttribute("count
      "), 10) + 1); | 
| 210       } | 210       } | 
| 211       else | 211       else | 
| 212       { | 212       { | 
| 213         requestXML = this.nodeByKey[key] = appendElement(this.requests, "request
      ", { | 213         requestXML = this.nodeByKey[key] = appendElement(this.requests, "request
      ", { | 
| 214           location: censorURL(entry.location), | 214           location: censorURL(entry.location), | 
| 215           type: entry.typeDescr, | 215           type: entry.type, | 
| 216           docDomain: entry.docDomain, | 216           docDomain: entry.docDomain, | 
| 217           thirdParty: entry.thirdParty, | 217           thirdParty: entry.thirdParty, | 
| 218           count: 1 | 218           count: 1 | 
| 219         }); | 219         }); | 
| 220       } | 220       } | 
| 221 | 221 | 
| 222       // Location is meaningless for element hiding hits | 222       // Location is meaningless for element hiding hits | 
| 223       if (entry.filter && entry.filter instanceof ElemHideBase) | 223       if (entry.filter && entry.filter instanceof ElemHideBase) | 
| 224         requestXML.removeAttribute("location"); | 224         requestXML.removeAttribute("location"); | 
| 225 | 225 | 
| (...skipping 694 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 920           if (filter instanceof BlockingFilter && filter.disabled) | 920           if (filter instanceof BlockingFilter && filter.disabled) | 
| 921             disabledMatcher.add(filter); | 921             disabledMatcher.add(filter); | 
| 922       } | 922       } | 
| 923 | 923 | 
| 924       let seenFilters = Object.create(null); | 924       let seenFilters = Object.create(null); | 
| 925       for (let request of requestsDataSource.origRequests) | 925       for (let request of requestsDataSource.origRequests) | 
| 926       { | 926       { | 
| 927         if (request.filter) | 927         if (request.filter) | 
| 928           continue; | 928           continue; | 
| 929 | 929 | 
| 930         let filter = disabledMatcher.matchesAny(request.location, RegExpFilter.t
      ypeMap[request.typeDescr], request.docDomain, request.thirdParty); | 930         let filter = disabledMatcher.matchesAny(request.location, RegExpFilter.t
      ypeMap[request.type], request.docDomain, request.thirdParty); | 
| 931         if (filter && !(filter.text in seenFilters)) | 931         if (filter && !(filter.text in seenFilters)) | 
| 932         { | 932         { | 
| 933           this.disabledFilters.push(filter); | 933           this.disabledFilters.push(filter); | 
| 934           seenFilters[filter.text] = true; | 934           seenFilters[filter.text] = true; | 
| 935         } | 935         } | 
| 936       } | 936       } | 
| 937 | 937 | 
| 938       // Find disabled subscriptions with filters matching any of the requests | 938       // Find disabled subscriptions with filters matching any of the requests | 
| 939       let seenSubscriptions = Object.create(null); | 939       let seenSubscriptions = Object.create(null); | 
| 940       for (let subscription of FilterStorage.subscriptions) | 940       for (let subscription of FilterStorage.subscriptions) | 
| 941       { | 941       { | 
| 942         if (!subscription.disabled) | 942         if (!subscription.disabled) | 
| 943           continue; | 943           continue; | 
| 944 | 944 | 
| 945         disabledMatcher.clear(); | 945         disabledMatcher.clear(); | 
| 946         for (let filter of subscription.filters) | 946         for (let filter of subscription.filters) | 
| 947           if (filter instanceof BlockingFilter) | 947           if (filter instanceof BlockingFilter) | 
| 948             disabledMatcher.add(filter); | 948             disabledMatcher.add(filter); | 
| 949 | 949 | 
| 950         for (let request of requestsDataSource.origRequests) | 950         for (let request of requestsDataSource.origRequests) | 
| 951         { | 951         { | 
| 952           if (request.filter) | 952           if (request.filter) | 
| 953             continue; | 953             continue; | 
| 954 | 954 | 
| 955           let filter = disabledMatcher.matchesAny(request.location, RegExpFilter
      .typeMap[request.typeDescr], request.docDomain, request.thirdParty); | 955           let filter = disabledMatcher.matchesAny(request.location, RegExpFilter
      .typeMap[request.type], request.docDomain, request.thirdParty); | 
| 956           if (filter && !(subscription.url in seenSubscriptions)) | 956           if (filter && !(subscription.url in seenSubscriptions)) | 
| 957           { | 957           { | 
| 958             this.disabledSubscriptions.push(subscription); | 958             this.disabledSubscriptions.push(subscription); | 
| 959             seenSubscriptions[subscription.text] = true; | 959             seenSubscriptions[subscription.text] = true; | 
| 960             break; | 960             break; | 
| 961           } | 961           } | 
| 962         } | 962         } | 
| 963       } | 963       } | 
| 964 | 964 | 
| 965       this.numSubscriptions = FilterStorage.subscriptions.filter(this.subscripti
      onFilter).length; | 965       this.numSubscriptions = FilterStorage.subscriptions.filter(this.subscripti
      onFilter).length; | 
| (...skipping 611 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 1577 | 1577 | 
| 1578 function censorURL(url) | 1578 function censorURL(url) | 
| 1579 { | 1579 { | 
| 1580   return url.replace(/([?;&\/#][^?;&\/#]+?=)[^?;&\/#]+/g, "$1*"); | 1580   return url.replace(/([?;&\/#][^?;&\/#]+?=)[^?;&\/#]+/g, "$1*"); | 
| 1581 } | 1581 } | 
| 1582 | 1582 | 
| 1583 function encodeHTML(str) | 1583 function encodeHTML(str) | 
| 1584 { | 1584 { | 
| 1585   return str.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").
      replace(/"/g, """); | 1585   return str.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").
      replace(/"/g, """); | 
| 1586 } | 1586 } | 
| OLD | NEW | 
|---|