X-Git-Url: http://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdata%2Fdecodesignal.cpp;fp=pv%2Fdata%2Fdecodesignal.cpp;h=28157794208c6fbf4a7b65be20b76773bb21b189;hp=ff7a27640fb597c4aed12863da5d6bf0ff9f2dd7;hb=f9a0fd83226d97af7458d8c9dac0b88c83a54d29;hpb=999869aa676f7077b7181355eee28e9b025d4cea diff --git a/pv/data/decodesignal.cpp b/pv/data/decodesignal.cpp index ff7a2764..28157794 100644 --- a/pv/data/decodesignal.cpp +++ b/pv/data/decodesignal.cpp @@ -108,11 +108,12 @@ void DecodeSignal::remove_decoder(int index) assert(index < (int)stack_.size()); // Find the decoder in the stack - auto iter = stack_.begin(); - for (int i = 0; i < index; i++, iter++) - assert(iter != stack_.end()); + auto iter = stack_.begin() + index; + assert(iter != stack_.end()); + + shared_ptr dec = *iter; - decoder_removed(iter->get()); + decoder_removed(dec.get()); // Delete the element stack_.erase(iter);