| #include "starboard/types.h" |
| // Copyright 2016 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // Thin allocation wrappers for the windows heap. This file should be deleted |
| // once the win-specific allocation shim has been removed, and the generic shim |
| // has becaome the default. |
| |
| #ifndef BASE_ALLOCATOR_WINHEAP_STUBS_H_ |
| #define BASE_ALLOCATOR_WINHEAP_STUBS_H_ |
| |
| namespace base { |
| namespace allocator { |
| |
| // Set to true if the link-time magic has successfully hooked into the CRT's |
| // heap initialization. |
| extern bool g_is_win_shim_layer_initialized; |
| |
| // Thin wrappers to implement the standard C allocation semantics on the |
| // CRT's Windows heap. |
| void* WinHeapMalloc(size_t size); |
| void WinHeapFree(void* ptr); |
| void* WinHeapRealloc(void* ptr, size_t size); |
| |
| // Returns a lower-bound estimate for the full amount of memory consumed by the |
| // the allocation |ptr|. |
| size_t WinHeapGetSizeEstimate(void* ptr); |
| |
| // Call the new handler, if one has been set. |
| // Returns true on successfully calling the handler, false otherwise. |
| bool WinCallNewHandler(size_t size); |
| |
| } // namespace allocator |
| } // namespace base |
| |
| #endif // BASE_ALLOCATOR_WINHEAP_STUBS_H_ |