X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fsession.cpp;h=0b503e056a83f6bc471aaf3c14612e3682cbbb97;hb=6d84894ef7395c5ec689e0fa72f396c3c2b6e53a;hp=22e0428d94abf26a5421c540377dc9e55c6ddccf;hpb=e7216ae0a66fe1563514cbd3f67f2e240d010315;p=pulseview.git diff --git a/pv/session.cpp b/pv/session.cpp index 22e0428..0b503e0 100644 --- a/pv/session.cpp +++ b/pv/session.cpp @@ -18,6 +18,9 @@ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ +#include +#include + #ifdef ENABLE_DECODE #include #endif @@ -127,8 +130,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);