* of the GNU Lesser General Public License.
*/
-#include "ucw/lib.h"
+#include <ucw/lib.h>
#include <stdlib.h>
#include <string.h>
-#ifndef DEBUG_DMALLOC
-
void *
-xmalloc(uns size)
+xmalloc(size_t size)
{
void *x = malloc(size);
if (!x)
- die("Cannot allocate %d bytes of memory", size);
+ die("Cannot allocate %zu bytes of memory", size);
return x;
}
-#endif
-
void *
-xmalloc_zero(uns size)
+xmalloc_zero(size_t size)
{
void *x = xmalloc(size);
bzero(x, size);
*/
free(ptr);
}
+
+void *
+xrealloc(void *old, size_t size)
+{
+ /* We assume that realloc(NULL, x) works like malloc(x), which is true with the glibc. */
+ void *x = realloc(old, size);
+ if (!x && size)
+ die("Cannot reallocate %zu bytes of memory", size);
+ return x;
+}