reverted: --- src/viscontrol.cpp Fri Aug 12 23:18:47 2011 +0100 +++ src/viscontrol.cpp Sat Aug 13 01:27:01 2011 +0100 @@ -670,15 +671,24 @@ continue; + //Initially assume that everything is passed through + //filter + int blockMask=0x0; + - int blockMask=0xFFFF; if((*it)->haveCache()) { //Loop over the children of this filter, grab their block masks for(tree::sibling_iterator itJ=it.begin(); itJ!=it.end();itJ++) { + if((*itJ)->haveCache()) + { + int curBlockMask; + curBlockMask=(*itJ)->getRefreshBlockMask(); + blockMask= (blockMask & curBlockMask); + + } - blockMask&=(*itJ)->getRefreshBlockMask(); else { blockMask&=0;