crossroads

Git mirror of https://crossroads.e-tunity.com/
git clone git://git.finwo.net/app/crossroads
Log | Files | Refs

xrealloc.c (979B)


      1 /*************************************************************************
      2  * This file is part of Crosroads 1.23, a load balancer and fail over
      3  * utility for TCP. Copyright (c) Karel Kubat, distributed under GPL.
      4  * Visit http://crossroads.e-tunity.com for information.
      5  *************************************************************************/
      6 #include "crossroads.h"
      7 
      8 void *xrealloc (void *block, unsigned sz) {
      9     void *newblock;
     10 
     11     // msg ("Realloc: block=%x, sz=%u", block, sz);
     12     if (! sz) {
     13 	free (block);
     14 	newblock = 0;
     15 	// msg ("Realloc: freed %x", block);
     16     } else if (!block) {
     17 	if (! (newblock = malloc (sz)) )
     18 	    error ("Out of memory (while allocating %u bytes)", sz);
     19 	// msg ("Realloc: malloc'd %x (%u bytes)", newblock, sz);
     20     } else {
     21 	if (! (newblock = realloc (block, sz)) )
     22 	    error ("Out of memory (while increasing block to %u bytes)", sz);
     23 	// msg ("Realloc'd %x to %x (%u bytes)", block, newblock, sz);
     24     }
     25     return (newblock);
     26 }
     27