summaryrefslogtreecommitdiff
path: root/gr-blocks/lib/udp_source_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gr-blocks/lib/udp_source_impl.cc')
-rw-r--r--gr-blocks/lib/udp_source_impl.cc9
1 files changed, 5 insertions, 4 deletions
diff --git a/gr-blocks/lib/udp_source_impl.cc b/gr-blocks/lib/udp_source_impl.cc
index 4b8815372f..11765de504 100644
--- a/gr-blocks/lib/udp_source_impl.cc
+++ b/gr-blocks/lib/udp_source_impl.cc
@@ -16,6 +16,7 @@
#include <gnuradio/io_signature.h>
#include <gnuradio/math.h>
#include <gnuradio/prefs.h>
+#include <cstddef>
#include <cstring>
#include <memory>
@@ -176,12 +177,12 @@ int udp_source_impl::work(int noutput_items,
return d_residual;
}
- int bytes_left_in_buffer = (int)(d_residual - d_sent);
- int bytes_to_send = std::min<int>(d_itemsize * noutput_items, bytes_left_in_buffer);
+ const std::ptrdiff_t bytes_left_in_buffer = d_residual - d_sent;
+ auto bytes_to_send =
+ std::min<std::ptrdiff_t>(d_itemsize * noutput_items, bytes_left_in_buffer);
// Copy the received data in the residual buffer to the output stream
memcpy(out, d_residbuf.data() + d_sent, bytes_to_send);
- int nitems = bytes_to_send / d_itemsize;
// Keep track of where we are if we don't have enough output
// space to send all the data in the residbuf.
@@ -192,7 +193,7 @@ int udp_source_impl::work(int noutput_items,
d_sent += bytes_to_send;
}
- return nitems;
+ return bytes_to_send / d_itemsize;
}
} /* namespace blocks */