diff options
author | Josh Blum <josh@joshknows.com> | 2011-09-02 14:07:13 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2011-09-02 14:07:13 -0700 |
commit | 0cbafd02667ed6125e6ba9a7c31bedb6e74c1fcb (patch) | |
tree | 056abf17c82de06860ff2fe48b18b6d7fd3a0503 /host | |
parent | acf92e83569097da61403f63a2cbe3b18e4920bb (diff) | |
download | uhd-0cbafd02667ed6125e6ba9a7c31bedb6e74c1fcb.tar.gz uhd-0cbafd02667ed6125e6ba9a7c31bedb6e74c1fcb.tar.bz2 uhd-0cbafd02667ed6125e6ba9a7c31bedb6e74c1fcb.zip |
usrp1: reset control objects in this order to avoid race conditions
Diffstat (limited to 'host')
-rw-r--r-- | host/lib/usrp/usrp1/usrp1_impl.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/host/lib/usrp/usrp1/usrp1_impl.cpp b/host/lib/usrp/usrp1/usrp1_impl.cpp index 8f6a582fa..b2da16837 100644 --- a/host/lib/usrp/usrp1/usrp1_impl.cpp +++ b/host/lib/usrp/usrp1/usrp1_impl.cpp @@ -390,11 +390,13 @@ usrp1_impl::usrp1_impl(const device_addr_t &device_addr){ } usrp1_impl::~usrp1_impl(void){ - _io_impl.reset(); //stops vandal before other stuff gets deconstructed UHD_SAFE_CALL( this->enable_rx(false); this->enable_tx(false); ) + _tree.reset(); //resets counts on sptrs held in tree + _soft_time_ctrl.reset(); //stops cmd task before proceeding + _io_impl.reset(); //stops vandal before other stuff gets deconstructed } /*! |