X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Flogicsnapshot.cpp;h=5665d35f8c3d58916b3df6ed41c11227f13d39cf;hp=03e6a54f2e7c097bb2909c9ad1ae1fbe671bbaf5;hb=5cef1ea3c6a3ed3851c631354bf9168a154179dc;hpb=1b1ec774978b65209ce2b454cbf81da499b797d2;ds=sidebyside diff --git a/pv/data/logicsnapshot.cpp b/pv/data/logicsnapshot.cpp index 03e6a54f..5665d35f 100644 --- a/pv/data/logicsnapshot.cpp +++ b/pv/data/logicsnapshot.cpp @@ -60,10 +60,11 @@ void LogicSnapshot::append_payload( const sr_datafeed_logic &logic) { assert(_unit_size == logic.unitsize); + assert((logic.length % _unit_size) == 0); lock_guard lock(_mutex); - append_data(logic.data, logic.length); + append_data(logic.data, logic.length / _unit_size); // Generate the first mip-map from the data append_payload_to_mipmap(); @@ -167,7 +168,7 @@ void LogicSnapshot::append_payload_to_mipmap() uint64_t LogicSnapshot::get_sample(uint64_t index) const { assert(_data); - assert(index >= 0 && index < _sample_count); + assert(index < _sample_count); return *(uint64_t*)((uint8_t*)_data + index * _unit_size); } @@ -182,7 +183,6 @@ void LogicSnapshot::get_subsampled_edges( bool last_sample; bool fast_forward; - assert(start >= 0); assert(end <= get_sample_count()); assert(start <= end); assert(min_length > 0); @@ -258,7 +258,6 @@ void LogicSnapshot::get_subsampled_edges( (level + 1) * MipMapScalePower; const uint64_t offset = index >> level_scale_power; - assert(offset >= 0); // Check if we reached the last block at this // level, or if there was a change in this block @@ -293,7 +292,6 @@ void LogicSnapshot::get_subsampled_edges( (level + 1) * MipMapScalePower; const uint64_t offset = index >> level_scale_power; - assert(offset >= 0); // Check if we reached the last block at this // level, or if there was a change in this block