X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fsession.cpp;h=4823543213de5b5a080be2ea732d1086aefa4bae;hb=dbf74f26f6bd9fd5277f090fea8e4f5506c19911;hp=22e0428d94abf26a5421c540377dc9e55c6ddccf;hpb=e7216ae0a66fe1563514cbd3f67f2e240d010315;p=pulseview.git diff --git a/pv/session.cpp b/pv/session.cpp index 22e0428d..48235432 100644 --- a/pv/session.cpp +++ b/pv/session.cpp @@ -127,8 +127,11 @@ void Session::set_device(shared_ptr device) // Ensure we are not capturing before setting the device stop_capture(); + if (device_) + device_->close(); + device_ = std::move(device); - device_->create(); + device_->open(); device_->session()->add_datafeed_callback([=] (shared_ptr device, shared_ptr packet) { data_feed_in(device, packet);