aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBenoît Ganne <bganne@cisco.com>2019-10-22 18:19:00 +0200
committerFlorin Coras <florin.coras@gmail.com>2019-10-22 18:17:27 +0000
commit70d5d4fa09520bd5825b49960ae896beca3535e8 (patch)
treeea3af153534efde6c3e130922e90ca8edcb4b6a2
parent3ad078d75d1430b3f71c28a0e8dc7a880b28d332 (diff)
vppinfra: make coverity happy with vec_set_len
Coverity gets confused by ASSERT((l) <= vec_max_len(v)) when l is 0. Type: fix Change-Id: I247d7015b148233d8f195bcf41e9a047b7a21309 Signed-off-by: Benoît Ganne <bganne@cisco.com>
-rw-r--r--src/vppinfra/vec_bootstrap.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/vppinfra/vec_bootstrap.h b/src/vppinfra/vec_bootstrap.h
index 7fb016fe8d2..5c42e5ea914 100644
--- a/src/vppinfra/vec_bootstrap.h
+++ b/src/vppinfra/vec_bootstrap.h
@@ -160,16 +160,21 @@ vec_aligned_header_end (void *v, uword header_bytes, uword align)
#define vec_max_len(v) (vec_capacity(v,0) / sizeof (v[0]))
/** \brief Set vector length to a user-defined value */
+#ifndef __COVERITY__ /* Coverity gets confused by ASSERT() */
#define vec_set_len(v, l) do { \
ASSERT(v); \
ASSERT((l) <= vec_max_len(v)); \
_vec_len(v) = (l); \
} while (0)
+#else /* __COVERITY__ */
+#define vec_set_len(v, l) do { \
+ _vec_len(v) = (l); \
+} while (0)
+#endif /* __COVERITY__ */
/** \brief Reset vector length to zero
NULL-pointer tolerant
*/
-
#define vec_reset_length(v) do { if (v) vec_set_len (v, 0); } while (0)
/** \brief End (last data address) of vector. */