X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fstoresession.cpp;h=ef1c6aad2d245317988066b65c3299033d89ebca;hb=e57ee799a5512ce13460b733e7ca08de8f1277cf;hp=4de9d56dde2cc676899404a27040ab6ec88f0967;hpb=1f4caa772cd691da7578816bf3744496c9cde1cf;p=pulseview.git diff --git a/pv/storesession.cpp b/pv/storesession.cpp index 4de9d56d..ef1c6aad 100644 --- a/pv/storesession.cpp +++ b/pv/storesession.cpp @@ -29,6 +29,9 @@ #include +using boost::shared_lock; +using boost::shared_mutex; + using std::deque; using std::dynamic_pointer_cast; using std::lock_guard; @@ -79,8 +82,9 @@ bool StoreSession::start() { set< shared_ptr > data_set = _session.get_data(); - const vector< shared_ptr > sigs = - _session.get_signals(); + + shared_lock lock(_session.signals_mutex()); + const vector< shared_ptr > &sigs(_session.signals()); // Check we have logic data if (data_set.empty() || sigs.empty()) {