X-Git-Url: http://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Fdecodesignal.cpp;fp=pv%2Fdata%2Fdecodesignal.cpp;h=4a7d6ed8c60a7593773d50bf17026176f018678b;hp=ec2b6a23f6e1aac6487ef0629d28e77b45a6218f;hb=ab185f78707eb2800c8b9ea577412ea5f6319f22;hpb=c764c995115fbcd3668a02ce1ce0950b5fb6c670 diff --git a/pv/data/decodesignal.cpp b/pv/data/decodesignal.cpp index ec2b6a23..4a7d6ed8 100644 --- a/pv/data/decodesignal.cpp +++ b/pv/data/decodesignal.cpp @@ -449,7 +449,7 @@ int64_t DecodeSignal::get_decoded_sample_count(uint32_t segment_id, return result; } -vector DecodeSignal::visible_rows() const +vector DecodeSignal::get_rows(bool visible_only) const { lock_guard lock(output_mutex_); @@ -457,7 +457,7 @@ vector DecodeSignal::visible_rows() const for (const shared_ptr& dec : stack_) { assert(dec); - if (!dec->shown()) + if (visible_only && !dec->shown()) continue; const srd_decoder *const decc = dec->decoder(); @@ -507,7 +507,7 @@ void DecodeSignal::get_annotation_subset( { // Note: We put all vectors and lists on the heap, not the stack - const vector rows = visible_rows(); + const vector rows = get_rows(true); // Use forward_lists for faster merging forward_list *all_ann_list = new forward_list();