ext/iodine/fio.c
/* reallocates memory using the system, resetting the size header */
reallocates memory using the system, resetting the size header
reallocates memory using the system resetting the size header
static inline void *big_realloc(void *ptr, size_t new_size) {
  size_t *mem = (void *)(((uintptr_t)ptr) - 16);
  new_size = sys_round_size(new_size + 16);
  mem = sys_realloc(mem, *mem, new_size);
  if (!mem)
    goto error;
  *mem = new_size;
  return (void *)(((uintptr_t)mem) + 16);
error:
  return NULL;
}
static inline void * big_realloc ( void * ptr , size_t new_size ) { size_t * mem = ( void * ) ( ( ( uintptr_t ) ptr ) - 16 ) ; new_size = sys_round_size ( new_size + 16 ) ; mem = sys_realloc ( mem , * mem , new_size ) ; if ( ! mem ) goto error ; * mem = new_size ; return ( void * ) ( ( ( uintptr_t ) mem ) + 16 ) ; error : return NULL ; }
reallocates memory using the system, resetting the size header
reallocates memory using the system resetting the size header