projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Append new segments to the end, not the beginning of the list
[pulseview.git]
/
pv
/
views
/
trace
/
logicsignal.cpp
diff --git
a/pv/views/trace/logicsignal.cpp
b/pv/views/trace/logicsignal.cpp
index 407551843bfdcaeaa633345108b69647c22fbc37..e536171667307c8e43a2a81876de90c3ca9f815c 100644
(file)
--- a/
pv/views/trace/logicsignal.cpp
+++ b/
pv/views/trace/logicsignal.cpp
@@
-46,6
+46,7
@@
using std::max;
using std::make_pair;
using std::min;
using std::none_of;
using std::make_pair;
using std::min;
using std::none_of;
+using std::out_of_range;
using std::pair;
using std::shared_ptr;
using std::vector;
using std::pair;
using std::shared_ptr;
using std::vector;
@@
-196,7
+197,13
@@
void LogicSignal::paint_mid(QPainter &p, ViewItemPaintParams &pp)
if (segments.empty())
return;
if (segments.empty())
return;
- const shared_ptr<pv::data::LogicSegment> &segment = segments.front();
+ shared_ptr<pv::data::LogicSegment> segment;
+ try {
+ segment = segments.at(current_segment_);
+ } catch (out_of_range) {
+ qDebug() << "Current logic segment out of range for signal" << base_->name();
+ return;
+ }
double samplerate = segment->samplerate();
double samplerate = segment->samplerate();