X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fsigsession.cpp;h=2d695af3837af60b95eb1b0cb59e280142f9ff28;hp=1d424c000bf3972a8c697534af02522a05d99591;hb=b86aa8f4a22857a90bbfca6e7993b2deaf1157d4;hpb=a4cf020a253c8c874ed8652f38a1c61c9a4754a4 diff --git a/pv/sigsession.cpp b/pv/sigsession.cpp index 1d424c00..2d695af3 100644 --- a/pv/sigsession.cpp +++ b/pv/sigsession.cpp @@ -348,7 +348,7 @@ void SigSession::update_signals(shared_ptr device) } // Make the Signals list - do { + { lock_guard lock(_signals_mutex); _signals.clear(); @@ -359,7 +359,8 @@ void SigSession::update_signals(shared_ptr device) switch(channel->type()->id()) { case SR_CHANNEL_LOGIC: signal = shared_ptr( - new view::LogicSignal(device, channel, _logic_data)); + new view::LogicSignal(*this, device, + channel, _logic_data)); break; case SR_CHANNEL_ANALOG: @@ -367,7 +368,8 @@ void SigSession::update_signals(shared_ptr device) shared_ptr data( new data::Analog()); signal = shared_ptr( - new view::AnalogSignal(channel, data)); + new view::AnalogSignal( + *this, channel, data)); break; } @@ -380,7 +382,7 @@ void SigSession::update_signals(shared_ptr device) _signals.push_back(signal); } - } while(0); + } signals_changed(); }