X-Git-Url: https://sigrok.org/gitweb/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fsession.cpp;h=31cbb73c19e1fb37fde8955dff2de9e35062f683;hp=c464942893c271a16c637a4df1c5aac982d9cd9c;hb=24c29d4f917ffac5a280d572cc04d1edb66a81b9;hpb=7db61e770abd2d1c7eb326a09e35cd4266664c1d diff --git a/pv/session.cpp b/pv/session.cpp index c4649428..31cbb73c 100644 --- a/pv/session.cpp +++ b/pv/session.cpp @@ -383,7 +383,7 @@ void Session::set_device(shared_ptr device) device_.reset(); - // Revert name back to default name (e.g. "Untitled-1") as the data is gone + // Revert name back to default name (e.g. "Session 1") as the data is gone name_ = default_name_; name_changed(); @@ -415,16 +415,17 @@ void Session::set_device(shared_ptr device) device_->open(); } catch (const QString &e) { device_.reset(); - device_changed(); - throw; } - device_->session()->add_datafeed_callback([=] - (shared_ptr device, shared_ptr packet) { - data_feed_in(device, packet); - }); + if (device_) { + device_->session()->add_datafeed_callback([=] + (shared_ptr device, shared_ptr packet) { + data_feed_in(device, packet); + }); + + update_signals(); + } - update_signals(); device_changed(); } @@ -532,7 +533,7 @@ void Session::start_capture(function error_handler) for (const shared_ptr d : all_signal_data_) d->clear(); - // Revert name back to default name (e.g. "Untitled-1") as the data is gone + // Revert name back to default name (e.g. "Session 1") as the data is gone name_ = default_name_; name_changed();