diff --git a/include/gen_utils.h b/include/gen_utils.h index 386121f2f..f49ac5ce5 100644 --- a/include/gen_utils.h +++ b/include/gen_utils.h @@ -146,8 +146,11 @@ class PtrArray { } void shrink() { unsigned int new_size=l_near_pow_2(len+1); - pdata=(void **)realloc(pdata,new_size*sizeof(void *)); - size=new_size; + void *new_pdata = realloc(pdata, new_size * sizeof(void *)); + if (new_pdata) { + pdata = (void **)new_pdata; + size = new_size; + } } public: unsigned int len;