diff options
-rw-r--r-- | gr-uhd/lib/usrp_sink_impl.cc | 2 | ||||
-rw-r--r-- | gr-uhd/lib/usrp_source_impl.cc | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/gr-uhd/lib/usrp_sink_impl.cc b/gr-uhd/lib/usrp_sink_impl.cc index 9ade7a710e..bd56e992fd 100644 --- a/gr-uhd/lib/usrp_sink_impl.cc +++ b/gr-uhd/lib/usrp_sink_impl.cc @@ -375,6 +375,7 @@ namespace gr { } } + boost::this_thread::disable_interruption disable_interrupt; #ifdef GR_UHD_USE_STREAM_API //send all ninput_items with metadata const size_t num_sent = _tx_stream->send @@ -384,6 +385,7 @@ namespace gr { (input_items, ninput_items, _metadata, *_type, ::uhd::device::SEND_MODE_FULL_BUFF, 1.0); #endif + boost::this_thread::restore_interruption restore_interrupt(disable_interrupt); //if using length_tags, decrement items left to send by the number of samples sent if(not pmt::is_null(_length_tag_key) && _nitems_to_send > 0) { diff --git a/gr-uhd/lib/usrp_source_impl.cc b/gr-uhd/lib/usrp_source_impl.cc index 914637019c..11b6300406 100644 --- a/gr-uhd/lib/usrp_source_impl.cc +++ b/gr-uhd/lib/usrp_source_impl.cc @@ -618,6 +618,7 @@ namespace gr { gr_vector_void_star &output_items) { boost::recursive_mutex::scoped_lock lock(d_mutex); + boost::this_thread::disable_interruption disable_interrupt; #ifdef GR_UHD_USE_STREAM_API //In order to allow for low-latency: //We receive all available packets without timeout. @@ -640,8 +641,8 @@ namespace gr { ::uhd::device::RECV_MODE_ONE_PACKET, 1.0); } #endif - - //handle possible errors conditions + boost::this_thread::restore_interruption restore_interrupt(disable_interrupt); + // handle possible errors conditions switch(_metadata.error_code) { case ::uhd::rx_metadata_t::ERROR_CODE_NONE: if(_tag_now) { |