diff --git a/librz/include/rz_vector.h b/librz/include/rz_vector.h index 1bf7a0217b..3d627a7d20 100644 --- a/librz/include/rz_vector.h +++ b/librz/include/rz_vector.h @@ -292,12 +292,18 @@ static inline void **rz_pvector_data(RzPVector *vec) { // returns the first element of the vector static inline void *rz_pvector_head(RzPVector *vec) { rz_return_val_if_fail(vec, NULL); + if (vec->v.len < 1) { + return NULL; + } return ((void **)vec->v.a)[0]; } // returns the last element of the vector static inline void *rz_pvector_tail(RzPVector *vec) { rz_return_val_if_fail(vec, NULL); + if (vec->v.len < 1) { + return NULL; + } return ((void **)vec->v.a)[vec->v.len - 1]; }