X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fviews%2Ftrace%2Flogicsignal.cpp;h=1f25890dd5b7a3e11f83afd909a053e1d79c8990;hb=20df1a39d587c284f5ee8873dc05470d6a6b11eb;hp=4a3a80a7255fa7b5cd6a6f1bdb263bfce4bcfd3f;hpb=7daebd054e65a244dce36933cbf173b8d7532a09;p=pulseview.git diff --git a/pv/views/trace/logicsignal.cpp b/pv/views/trace/logicsignal.cpp index 4a3a80a..1f25890 100644 --- a/pv/views/trace/logicsignal.cpp +++ b/pv/views/trace/logicsignal.cpp @@ -204,7 +204,7 @@ void LogicSignal::paint_mid(QPainter &p, ViewItemPaintParams &pp) const double pixels_offset = pp.pixels_offset(); const pv::util::Timestamp& start_time = segment->start_time(); - const int64_t last_sample = segment->get_sample_count() - 1; + const int64_t last_sample = (int64_t)segment->get_sample_count() - 1; const double samples_per_pixel = samplerate * pp.scale(); const double pixels_per_sample = 1 / samples_per_pixel; const pv::util::Timestamp start = samplerate * (pp.offset() - start_time); @@ -358,11 +358,12 @@ shared_ptr LogicSignal::get_logic_segment_to_paint() con segment = segments.back(); } - if (segment_display_mode_ == ShowSingleSegmentOnly) { + if ((segment_display_mode_ == ShowSingleSegmentOnly) || + (segment_display_mode_ == ShowLastCompleteSegmentOnly)) { try { segment = segments.at(current_segment_); } catch (out_of_range) { - qDebug() << "Current logic segment out of range for signal" << base_->name(); + qDebug() << "Current logic segment out of range for signal" << base_->name() << ":" << current_segment_; } } }