| * Copyright (C) the libgit2 contributors. All rights reserved. |
| * This file is part of libgit2, distributed under the GNU GPL v2 with |
| * a Linking Exception. For full terms see the included COPYING file. |
| #include "allocators/stdalloc.h" |
| #include "allocators/win32_crtdbg.h" |
| git_allocator git__allocator; |
| static int setup_default_allocator(void) |
| #if defined(GIT_MSVC_CRTDBG) |
| return git_win32_crtdbg_init_allocator(&git__allocator); |
| return git_stdalloc_init_allocator(&git__allocator); |
| int git_allocator_global_init(void) |
| * We don't want to overwrite any allocator which has been set before |
| * the init function is called. |
| if (git__allocator.gmalloc != NULL) |
| return setup_default_allocator(); |
| int git_allocator_setup(git_allocator *allocator) |
| return setup_default_allocator(); |
| memcpy(&git__allocator, allocator, sizeof(*allocator)); |