diff options
Diffstat (limited to 'host/lib')
-rw-r--r-- | host/lib/include/uhdlib/transport/rx_streamer_impl.hpp | 5 | ||||
-rw-r--r-- | host/lib/transport/super_recv_packet_handler.hpp | 6 |
2 files changed, 11 insertions, 0 deletions
diff --git a/host/lib/include/uhdlib/transport/rx_streamer_impl.hpp b/host/lib/include/uhdlib/transport/rx_streamer_impl.hpp index ce66d2ccb..087a13de7 100644 --- a/host/lib/include/uhdlib/transport/rx_streamer_impl.hpp +++ b/host/lib/include/uhdlib/transport/rx_streamer_impl.hpp @@ -132,6 +132,11 @@ public: const double timeout, const bool one_packet) { + if (nsamps_per_buff == 0) { + metadata.reset(); + return 0; + } + if (_error_metadata_cache.check(metadata)) { return 0; } diff --git a/host/lib/transport/super_recv_packet_handler.hpp b/host/lib/transport/super_recv_packet_handler.hpp index f428f01f1..c6947ba26 100644 --- a/host/lib/transport/super_recv_packet_handler.hpp +++ b/host/lib/transport/super_recv_packet_handler.hpp @@ -238,6 +238,12 @@ public: return 0; } + // Just return if no samples requested + if (nsamps_per_buff == 0) { + metadata.reset(); + return 0; + } + size_t accum_num_samps = recv_one_packet(buffs, nsamps_per_buff, metadata, timeout); |