aboutsummaryrefslogtreecommitdiffstats
path: root/host/lib/rfnoc/chdr_ctrl_xport.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'host/lib/rfnoc/chdr_ctrl_xport.cpp')
-rw-r--r--host/lib/rfnoc/chdr_ctrl_xport.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/host/lib/rfnoc/chdr_ctrl_xport.cpp b/host/lib/rfnoc/chdr_ctrl_xport.cpp
index f9f7c9e1b..6b185efab 100644
--- a/host/lib/rfnoc/chdr_ctrl_xport.cpp
+++ b/host/lib/rfnoc/chdr_ctrl_xport.cpp
@@ -78,6 +78,16 @@ chdr_ctrl_xport::chdr_ctrl_xport(io_service::sptr io_srv,
recv_link, 1, mgmt_recv_cb, send_link_if::sptr(), 0, release_cb);
}
+
+chdr_ctrl_xport::~chdr_ctrl_xport()
+{
+ // Release I/O service clients before allowing members needed by callbacks
+ // be destroyed
+ _send_if.reset();
+ _ctrl_recv_if.reset();
+ _mgmt_recv_if.reset();
+}
+
/*!
* Get an empty frame buffer in which to write packet contents.
*