diff --git a/src/js/contentscript.js b/src/js/contentscript.js index f4a1e8e62..6244a7030 100644 --- a/src/js/contentscript.js +++ b/src/js/contentscript.js @@ -663,9 +663,9 @@ vAPI.DOMFilterer = class { const proceduralFilterer = this.proceduralFiltererInstance(); if ( proceduralFilterer !== null ) { for ( const json of this.convertedProceduralFilters ) { - out.procedural.push( - proceduralFilterer.createProceduralFilter(json) - ); + const pfilter = proceduralFilterer.createProceduralFilter(json); + pfilter.converted = true; + out.procedural.push(pfilter); } } } diff --git a/src/js/scriptlets/cosmetic-logger.js b/src/js/scriptlets/cosmetic-logger.js index f023d231c..181c6e209 100644 --- a/src/js/scriptlets/cosmetic-logger.js +++ b/src/js/scriptlets/cosmetic-logger.js @@ -141,16 +141,18 @@ const processDeclarativeComplex = function(out) { /******************************************************************************/ -const processProcedural = function(out) { +function processProcedural(out) { if ( proceduralDict.size === 0 ) { return; } 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; } out.push(`##${raw}`); proceduralDict.delete(raw); } -}; +} /******************************************************************************/