1
0
mirror of https://github.com/gorhill/uBlock.git synced 2024-09-14 23:12:28 +02:00

Properly handle converted procedural filters in logger

Related issue:
- https://github.com/uBlockOrigin/uBlock-issues/issues/2624
This commit is contained in:
Raymond Hill 2023-04-29 15:22:40 -04:00
parent a3b74cd25e
commit 5fd35ffb3c
No known key found for this signature in database
GPG Key ID: 25E1490B761470C2
2 changed files with 8 additions and 6 deletions

View File

@ -663,9 +663,9 @@ vAPI.DOMFilterer = class {
const proceduralFilterer = this.proceduralFiltererInstance(); const proceduralFilterer = this.proceduralFiltererInstance();
if ( proceduralFilterer !== null ) { if ( proceduralFilterer !== null ) {
for ( const json of this.convertedProceduralFilters ) { for ( const json of this.convertedProceduralFilters ) {
out.procedural.push( const pfilter = proceduralFilterer.createProceduralFilter(json);
proceduralFilterer.createProceduralFilter(json) pfilter.converted = true;
); out.procedural.push(pfilter);
} }
} }
} }

View File

@ -141,16 +141,18 @@ const processDeclarativeComplex = function(out) {
/******************************************************************************/ /******************************************************************************/
const processProcedural = function(out) { function processProcedural(out) {
if ( proceduralDict.size === 0 ) { return; } if ( proceduralDict.size === 0 ) { return; }
for ( const [ raw, pselector ] of proceduralDict ) { for ( const [ raw, pselector ] of proceduralDict ) {
if ( pselector.hit === false && pselector.exec().length === 0 ) { if ( pselector.converted ) {
if ( safeQuerySelector(pselector.selector) === null ) { continue; }
} else if ( pselector.hit === false && pselector.exec().length === 0 ) {
continue; continue;
} }
out.push(`##${raw}`); out.push(`##${raw}`);
proceduralDict.delete(raw); proceduralDict.delete(raw);
} }
}; }
/******************************************************************************/ /******************************************************************************/