X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Fanalog.cpp;h=02cb83e40c7e474729c7c6d82035f673138f6d36;hp=0b5c37729ea0908c4e6a3a2b39a727088de014a9;hb=HEAD;hpb=bee54d9ec103a35c86fa9e80fbdd2a07f8fb762d diff --git a/pv/data/analog.cpp b/pv/data/analog.cpp index 0b5c3772..da9736b5 100644 --- a/pv/data/analog.cpp +++ b/pv/data/analog.cpp @@ -40,6 +40,9 @@ void Analog::push_segment(shared_ptr &segment) { segments_.push_back(segment); + if ((samplerate_ == 1) && (segment->samplerate() > 1)) + samplerate_ = segment->samplerate(); + connect(segment.get(), SIGNAL(completed()), this, SLOT(on_segment_completed())); } @@ -61,9 +64,11 @@ uint32_t Analog::get_segment_count() const void Analog::clear() { - segments_.clear(); + if (!segments_.empty()) { + segments_.clear(); - samples_cleared(); + samples_cleared(); + } } void Analog::set_samplerate(double value)