*
* Returns zero on success, aborts on OOM
*/
-int virReallocN(void *ptrptr,
- size_t size,
- size_t count)
+void virReallocN(void *ptrptr,
+ size_t size,
+ size_t count)
{
*(void **)ptrptr = g_realloc_n(*(void**)ptrptr, size, count);
- return 0;
}
/**
if (*countptr + add < *countptr)
abort();
- if (virReallocN(ptrptr, size, *countptr + add) < 0)
- abort();
+ virReallocN(ptrptr, size, *countptr + add);
memset(*(char **)ptrptr + (size * *countptr), 0, size * add);
*countptr += add;
}
void virShrinkN(void *ptrptr, size_t size, size_t *countptr, size_t toremove)
{
if (toremove < *countptr) {
- if (virReallocN(ptrptr, size, *countptr -= toremove) < 0)
- abort();
+ virReallocN(ptrptr, size, *countptr -= toremove);
} else {
g_free(*((void **)ptrptr));
*((void **)ptrptr) = NULL;
*/
/* Don't call these directly - use the macros below */
-int virReallocN(void *ptrptr, size_t size, size_t count)
+void virReallocN(void *ptrptr, size_t size, size_t count)
ATTRIBUTE_NONNULL(1);
void virExpandN(void *ptrptr, size_t size, size_t *count, size_t add)
ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(3);
*
* This macro is safe to use on arguments with side effects.
*
- * Returns 0 on success, aborts on OOM
+ * Aborts on OOM
*/
#define VIR_REALLOC_N(ptr, count) virReallocN(&(ptr), sizeof(*(ptr)), (count))