From 70d5d4fa09520bd5825b49960ae896beca3535e8 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Beno=C3=AEt=20Ganne?= Date: Tue, 22 Oct 2019 18:19:00 +0200 Subject: [PATCH] vppinfra: make coverity happy with vec_set_len MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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 --- src/vppinfra/vec_bootstrap.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) 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. */ -- 2.16.6