U_CAPI void U_EXPORT2 uprv_free(void *buffer) { if (buffer != zeroMem) { if (pFree) { (*pFree)(pContext, buffer); } else { uprv_default_free(buffer); } } }
U_CAPI void U_EXPORT2 uprv_free(void *buffer) { #if U_DEBUG && defined(UPRV_MALLOC_COUNT) putchar('<'); fflush(stdout); #endif if (buffer != zeroMem) { if (pFree) { (*pFree)(pContext, buffer); } else { uprv_default_free(buffer); } } }
U_CAPI void * U_EXPORT2 uprv_realloc(void * buffer, size_t size) { if (buffer == zeroMem) { return uprv_malloc(size); } else if (size == 0) { if (pFree) { (*pFree)(pContext, buffer); } else { uprv_default_free(buffer); } return (void *)zeroMem; } else { gHeapInUse = TRUE; if (pRealloc) { return (*pRealloc)(pContext, buffer, size); } else { return uprv_default_realloc(buffer, size); } } }
U_CAPI void * U_EXPORT2 uprv_realloc(void * buffer, size_t size) { #if U_DEBUG && defined(UPRV_MALLOC_COUNT) putchar('~'); fflush(stdout); #endif if (buffer == zeroMem) { return uprv_malloc(size); } else if (size == 0) { if (pFree) { (*pFree)(pContext, buffer); } else { uprv_default_free(buffer); } return (void *)zeroMem; } else { if (pRealloc) { return (*pRealloc)(pContext, buffer, size); } else { return uprv_default_realloc(buffer, size); } } }