X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fview%2Fview.cpp;h=079d8d89b38ffaec8e42b1c6a7f173e56a46bb30;hp=fae74f8f5739600ab8ffedd5aee153b313d5e44b;hb=c3a740dd5d095eb1cdf42e00df4d5a5c480ac5b3;hpb=722930c167711a4b59b4f4d5a9bab20d88b3f535 diff --git a/pv/view/view.cpp b/pv/view/view.cpp index fae74f8..079d8d8 100644 --- a/pv/view/view.cpp +++ b/pv/view/view.cpp @@ -22,9 +22,10 @@ #include #endif -#include -#include -#include +#include +#include +#include +#include #include #include @@ -46,9 +47,11 @@ using pv::data::SignalData; using std::back_inserter; using std::deque; using std::list; +using std::lock_guard; using std::max; using std::make_pair; using std::min; +using std::mutex; using std::pair; using std::set; using std::shared_ptr; @@ -214,9 +217,6 @@ void View::zoom_one_to_one() { using pv::data::SignalData; - const vector< shared_ptr > sigs( - session().get_signals()); - // Make a set of all the visible data objects set< shared_ptr > visible_data = get_visible_data(); if (visible_data.empty()) @@ -273,8 +273,8 @@ list > View::selected_items() const set< shared_ptr > View::get_visible_data() const { - const vector< shared_ptr > sigs( - session().get_signals()); + lock_guard lock(session().signals_mutex()); + const vector< shared_ptr > &sigs(session().signals()); // Make a set of all the visible data objects set< shared_ptr > visible_data; @@ -522,8 +522,8 @@ void View::signals_changed() // Populate the traces clear_child_items(); - const vector< shared_ptr > sigs( - session().get_signals()); + lock_guard lock(session().signals_mutex()); + const vector< shared_ptr > &sigs(session().signals()); for (auto s : sigs) add_child_item(s);