X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~mdw/git/mLib/blobdiff_plain/0fd574c3198e0a08b7b27972f7931d0c7deb19fb..0ddebb8f377a5daa1f546f18a956db99c54685ca:/alloc.c diff --git a/alloc.c b/alloc.c index d425e97..e82f435 100644 --- a/alloc.c +++ b/alloc.c @@ -1,6 +1,6 @@ /* -*-c-*- * - * $Id: alloc.c,v 1.4 2000/06/17 10:35:51 mdw Exp $ + * $Id: alloc.c,v 1.6 2004/04/08 01:36:11 mdw Exp $ * * Memory allocation functions * @@ -27,23 +27,6 @@ * MA 02111-1307, USA. */ -/*----- Revision history --------------------------------------------------* - * - * $Log: alloc.c,v $ - * Revision 1.4 2000/06/17 10:35:51 mdw - * Major overhaul for arena support. - * - * Revision 1.3 1999/05/06 19:51:35 mdw - * Reformatted the LGPL notice a little bit. - * - * Revision 1.2 1999/05/05 18:50:31 mdw - * Change licensing conditions to LGPL. - * - * Revision 1.1.1.1 1998/06/17 23:44:42 mdw - * Initial version of mLib - * - */ - /*----- Header files ------------------------------------------------------*/ /* --- ANSI headers --- */ @@ -104,6 +87,7 @@ char *x_strdup(arena *a, const char *s) * Arguments: @arena *a@ = pointer to underlying arena * @void *p@ = pointer to a block of memory * @size_t sz@ = new size desired for the block + * @size_t osz@ = size of the old block * * Returns: Pointer to the resized memory block (which is almost * certainly not in the same place any more). @@ -112,9 +96,9 @@ char *x_strdup(arena *a, const char *s) * exception @EXC_NOMEM@ is thrown. */ -void *x_realloc(arena *a, void *p, size_t sz) +void *x_realloc(arena *a, void *p, size_t sz, size_t osz) { - p = A_REALLOC(a, p, sz); + p = A_REALLOC(a, p, sz, osz); if (!p) THROW(EXC_NOMEM); return (p); @@ -163,6 +147,7 @@ char *(xstrdup)(const char *s) { return xstrdup(s); } * * Arguments: @void *p@ = pointer to a block of memory * @size_t sz@ = new size desired for the block + * @size_t osz@ = size of the old block * * Returns: Pointer to the resized memory block (which is almost * certainly not in the same place any more). @@ -171,7 +156,8 @@ char *(xstrdup)(const char *s) { return xstrdup(s); } * exception @EXC_NOMEM@ is thrown. */ -void *(xrealloc)(void *p, size_t sz) { return xrealloc(p, sz); } +void *(xrealloc)(void *p, size_t sz, size_t osz) +{ return xrealloc(p, sz, osz); } /* --- @xfree@ --- * *