X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Flogicsnapshot.cpp;h=a7a84cf916d1cad33d4f16fb60d7c45b3fbfacd0;hp=5665d35f8c3d58916b3df6ed41c11227f13d39cf;hb=f06ab14342ff8ed391bb3df5e30cf6faa3422090;hpb=c6013ca7dd2aaf5d3de86c92c916457ffd330cc0;ds=sidebyside diff --git a/pv/data/logicsnapshot.cpp b/pv/data/logicsnapshot.cpp index 5665d35f..a7a84cf9 100644 --- a/pv/data/logicsnapshot.cpp +++ b/pv/data/logicsnapshot.cpp @@ -204,7 +204,10 @@ void LogicSnapshot::get_subsampled_edges( { //----- Continue to search -----// level = min_level; - fast_forward = true; + + // We cannot fast-forward if there is no mip-map data at + // at the minimum level. + fast_forward = (_mip_map[level].data != NULL); if (min_length < MipMapScaleFactor) { @@ -241,7 +244,8 @@ void LogicSnapshot::get_subsampled_edges( // We can fast forward only if there was no change const bool sample = (get_sample(index) & sig_mask) != 0; - fast_forward = last_sample == sample; + if (last_sample != sample) + fast_forward = false; } if (fast_forward) {