projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Corrected order of MainWindow class declaration
[pulseview.git]
/
pv
/
data
/
logicsnapshot.cpp
diff --git
a/pv/data/logicsnapshot.cpp
b/pv/data/logicsnapshot.cpp
index 5665d35f8c3d58916b3df6ed41c11227f13d39cf..af6ac0e8c367a097372aeea376cef6c101785e8b 100644
(file)
--- a/
pv/data/logicsnapshot.cpp
+++ b/
pv/data/logicsnapshot.cpp
@@
-77,7
+77,10
@@
void LogicSnapshot::reallocate_mip_map(MipMapLevel &m)
if (new_data_length > m.data_length)
{
m.data_length = new_data_length;
if (new_data_length > m.data_length)
{
m.data_length = new_data_length;
- m.data = realloc(m.data, new_data_length * _unit_size);
+
+ // Padding is added to allow for the uint64_t write word
+ m.data = realloc(m.data, new_data_length * _unit_size +
+ sizeof(uint64_t));
}
}
}
}
@@
-204,7
+207,10
@@
void LogicSnapshot::get_subsampled_edges(
{
//----- Continue to search -----//
level = min_level;
{
//----- 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)
{
if (min_length < MipMapScaleFactor)
{
@@
-241,7
+247,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;
// 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) {
}
if (fast_forward) {