summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilip Balister <philip@balister.org>2018-11-05 14:00:28 -0500
committerPhilip Balister <philip@balister.org>2018-11-05 14:00:28 -0500
commit1166eec8f22141b1eb23a40e3b221b046883f682 (patch)
tree147a60dcada631660c9fecfd2ba77b6632f906fa
parentd60fcd1701fa4f3fe0f6b6f539a2a11613a904ca (diff)
interleave_impl.cc: Address Coverity 1327839, 1327840, 1327841, 1327842.
Dividing two ints gives a result that is an int. Adding 0.5f and converting back to an int gives the original result. This change keeps the current behavior and doesn't implement the (suspected) desired behavior. If rounding is desired, the divison should be done as a float, so the 0.5f is added to a float before truncation. Signed-off-by: Philip Balister <philip@balister.org>
-rw-r--r--gr-blocks/lib/interleave_impl.cc8
1 files changed, 4 insertions, 4 deletions
diff --git a/gr-blocks/lib/interleave_impl.cc b/gr-blocks/lib/interleave_impl.cc
index 65a5cb69b7..be0b1c6f73 100644
--- a/gr-blocks/lib/interleave_impl.cc
+++ b/gr-blocks/lib/interleave_impl.cc
@@ -64,7 +64,7 @@ namespace gr {
int
interleave_impl::fixed_rate_noutput_to_ninput(int noutput)
{
- return (int) ((noutput / d_ninputs) + .5);
+ return (noutput / d_ninputs);
}
void
@@ -72,7 +72,7 @@ namespace gr {
gr_vector_int& ninput_items_required)
{
for(unsigned int i = 0; i < ninput_items_required.size(); ++i) {
- ninput_items_required[i] = (int) ((noutput_items / ninput_items_required.size()) + .5);
+ ninput_items_required[i] = noutput_items / ninput_items_required.size();
}
}
@@ -82,7 +82,7 @@ namespace gr {
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items)
{
- size_t noutput_blocks = (size_t) ((noutput_items/d_blocksize) + .5);
+ size_t noutput_blocks = (size_t) (noutput_items/d_blocksize);
const char **in = (const char**)&input_items[0];
char *out = (char*)output_items[0];
@@ -93,7 +93,7 @@ namespace gr {
in[n] += d_itemsize * d_blocksize;
}
}
- consume_each((int)((noutput_items/d_ninputs) + .5));
+ consume_each(noutput_items/d_ninputs);
return noutput_items;
}