Skip to content

Commit

Permalink
Context: Added IMGUI_DISABLE_DEFAULT_ALLOCATORS to disable linking wi…
Browse files Browse the repository at this point in the history
…th malloc/free. (#1565, #586, #992, #1007, #1558)
  • Loading branch information
ocornut committed Jan 21, 2018
1 parent 5a301c2 commit e45d7a7
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions imgui.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -713,8 +713,13 @@ ImGuiContext* GImGui = &GImDefaultContext;
// Memory Allocator Functions. Use SetMemoryAllocators() to change them.
// If you use DLL hotreloading you might need to call SetMemoryAllocators() after reloading code from this file.
// Otherwise, you probably don't want to modify them mid-program, and if you use global/static e.g. ImVector<> instances you may need to keep them accessible during program destruction.
#ifndef IMGUI_DISABLE_DEFAULT_ALLOCATORS
static void* MallocWrapper(size_t size, void* user_data) { (void)user_data; return malloc(size); }
static void FreeWrapper(void* ptr, void* user_data) { (void)user_data; free(ptr); }
#else
static void* MallocWrapper(size_t size, void* user_data) { (void)user_data; (void)size; IM_ASSERT(0); return NULL; }
static void FreeWrapper(void* ptr, void* user_data) { (void)user_data; (void)ptr; IM_ASSERT(0); }
#endif

static void* (*GImAllocatorAllocFunc)(size_t size, void* user_data) = MallocWrapper;
static void (*GImAllocatorFreeFunc)(void* ptr, void* user_data) = FreeWrapper;
Expand Down

0 comments on commit e45d7a7

Please sign in to comment.