@@ -110,15 +110,14 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
110110 what : 'retrieveGenericCosmeticSelectors' ,
111111 pageURL : window . location . href ,
112112 selectors : lowGenericSelectors ,
113- highGenerics : highGenerics === null
113+ firstSurvey : highGenerics === null
114114 } ,
115115 retrieveHandler
116116 ) ;
117117 // https://github.com/gorhill/uBlock/issues/452
118- // There is only one first..
119- retrieveHandler = otherRetrieveHandler ;
118+ retrieveHandler = nextRetrieveHandler ;
120119 } else {
121- otherRetrieveHandler ( null ) ;
120+ nextRetrieveHandler ( null ) ;
122121 }
123122 lowGenericSelectors = [ ] ;
124123 } ;
@@ -148,21 +147,25 @@ var messager = vAPI.messaging.channel('contentscript-end.js');
148147 }
149148 }
150149 }
151- // Flush dead code from memory (does this work?)
150+ // Flush dead code from memory
152151 firstRetrieveHandler = null ;
153152
154- otherRetrieveHandler ( response ) ;
153+ // These are sent only once
154+ if ( response ) {
155+ if ( response . highGenerics ) {
156+ highGenerics = response . highGenerics ;
157+ }
158+ if ( response . donthide ) {
159+ processLowGenerics ( response . donthide , nullArray ) ;
160+ }
161+ }
162+
163+ nextRetrieveHandler ( response ) ;
155164 } ;
156165
157- var otherRetrieveHandler = function ( selectors ) {
166+ var nextRetrieveHandler = function ( selectors ) {
158167 //var tStart = timer.now();
159168 //console.debug('µBlock> contextNodes = %o', contextNodes);
160- if ( selectors && selectors . highGenerics ) {
161- highGenerics = selectors . highGenerics ;
162- }
163- if ( selectors && selectors . donthide . length ) {
164- processLowGenerics ( selectors . donthide , nullArray ) ;
165- }
166169 var hideSelectors = [ ] ;
167170 if ( selectors && selectors . hide . length ) {
168171 processLowGenerics ( selectors . hide , hideSelectors ) ;
0 commit comments