diff options
Diffstat (limited to 'host/lib/usrp/cores')
-rw-r--r-- | host/lib/usrp/cores/rx_vita_core_3000.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/host/lib/usrp/cores/rx_vita_core_3000.cpp b/host/lib/usrp/cores/rx_vita_core_3000.cpp index 368ae8e0a..fb3305ce8 100644 --- a/host/lib/usrp/cores/rx_vita_core_3000.cpp +++ b/host/lib/usrp/cores/rx_vita_core_3000.cpp @@ -82,12 +82,18 @@ struct rx_vita_core_3000_impl : rx_vita_core_3000 // not setup yet!"; return; } - if ((stream_cmd.stream_mode == stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_DONE + if (stream_cmd.stream_mode == stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_DONE || stream_cmd.stream_mode == stream_cmd_t::STREAM_MODE_NUM_SAMPS_AND_MORE) - && stream_cmd.num_samps > 0x0fffffff) { - throw uhd::assertion_error( - "Invalid stream command: num_samps exceeds maximum value! " - "(Note: Chain multiple commands to request larger bursts)"); + { + if (stream_cmd.num_samps == 0) { + UHD_LOGGER_WARNING("CORES") << "Ignoring stream command for finite acquisition of zero samples"; + return; + } + if (stream_cmd.num_samps > 0x0fffffff) { + throw uhd::assertion_error( + "Invalid stream command: num_samps exceeds maximum value! " + "(Note: Chain multiple commands to request larger bursts)"); + } } // setup the mode to instruction flags |