This was detected using cppcheck:
[src/common/compat/compat-poll.c:204]: (error) Uninitialized variable:
new_size
So, the check was always made over an uninitialized variable on the
stack. Fortunately, worst case scenario, new_size is set to the maximum
allowed or kept untouched.
Signed-off-by: David Goulet <dgoulet@efficios.com>
assert(array);
+ /* Refuse to resize the array more than the max size. */
+ if (new_size > poll_max_size) {
+ goto error;
+ }
+
ptr = realloc(array->events, new_size * sizeof(*ptr));
if (ptr == NULL) {
PERROR("realloc epoll add");
/* Ease our life a bit. */
current = &events->current;
- /* Safety check on size */
- if (new_size > poll_max_size) {
- new_size = poll_max_size;
- }
-
/* Check if we need to shrink it down. */
if ((current->nb_fd << 1UL) <= current->alloc_size &&
current->nb_fd >= current->init_size) {