diff options
author | Benoît Ganne <bganne@cisco.com> | 2023-01-26 19:23:19 +0100 |
---|---|---|
committer | Damjan Marion <dmarion@0xa5.net> | 2023-01-30 18:18:14 +0000 |
commit | 946f918a27c194e5a305db607eefb6ec83b5f5f1 (patch) | |
tree | a29fe23b4309c8ddd300752c80c18058dbcb6aae /src/vppinfra/pool.h | |
parent | a254de408e067df7de94ce9176e104bc2b3a0e67 (diff) |
vppinfra: keep AddressSanitizer happy
The vector size must be increased before setting the element so that
AddressSanitizer can keep track of the accessible memory.
Type: fix
Change-Id: I7b13ce98ff29d98e643f399ec1ecb4681d3cec92
Signed-off-by: Benoît Ganne <bganne@cisco.com>
Diffstat (limited to 'src/vppinfra/pool.h')
-rw-r--r-- | src/vppinfra/pool.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/vppinfra/pool.h b/src/vppinfra/pool.h index ef816096ff0..ea22af4a68b 100644 --- a/src/vppinfra/pool.h +++ b/src/vppinfra/pool.h @@ -295,8 +295,9 @@ _pool_put_index (void *p, uword index, uword elt_sz) /* Preallocated pool? */ if (ph->max_elts) { - ph->free_indices[_vec_len (ph->free_indices)] = index; - vec_inc_len (ph->free_indices, 1); + u32 len = _vec_len (ph->free_indices); + vec_set_len (ph->free_indices, len + 1); + ph->free_indices[len] = index; } else vec_add1 (ph->free_indices, index); |