1*6777b538SAndroid Build Coastguard Worker // Copyright 2017 The Chromium Authors 2*6777b538SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*6777b538SAndroid Build Coastguard Worker // found in the LICENSE file. 4*6777b538SAndroid Build Coastguard Worker 5*6777b538SAndroid Build Coastguard Worker #include "base/process/memory.h" 6*6777b538SAndroid Build Coastguard Worker 7*6777b538SAndroid Build Coastguard Worker #include "partition_alloc/partition_alloc_buildflags.h" 8*6777b538SAndroid Build Coastguard Worker 9*6777b538SAndroid Build Coastguard Worker #if BUILDFLAG(USE_ALLOCATOR_SHIM) 10*6777b538SAndroid Build Coastguard Worker #include "partition_alloc/shim/allocator_shim.h" 11*6777b538SAndroid Build Coastguard Worker #endif 12*6777b538SAndroid Build Coastguard Worker 13*6777b538SAndroid Build Coastguard Worker #include <stdlib.h> 14*6777b538SAndroid Build Coastguard Worker 15*6777b538SAndroid Build Coastguard Worker namespace base { 16*6777b538SAndroid Build Coastguard Worker EnableTerminationOnOutOfMemory()17*6777b538SAndroid Build Coastguard Workervoid EnableTerminationOnOutOfMemory() { 18*6777b538SAndroid Build Coastguard Worker // Nothing to be done here. 19*6777b538SAndroid Build Coastguard Worker } 20*6777b538SAndroid Build Coastguard Worker EnableTerminationOnHeapCorruption()21*6777b538SAndroid Build Coastguard Workervoid EnableTerminationOnHeapCorruption() { 22*6777b538SAndroid Build Coastguard Worker // Nothing to be done here. 23*6777b538SAndroid Build Coastguard Worker } 24*6777b538SAndroid Build Coastguard Worker UncheckedMalloc(size_t size,void ** result)25*6777b538SAndroid Build Coastguard Workerbool UncheckedMalloc(size_t size, void** result) { 26*6777b538SAndroid Build Coastguard Worker #if BUILDFLAG(USE_ALLOCATOR_SHIM) 27*6777b538SAndroid Build Coastguard Worker *result = allocator_shim::UncheckedAlloc(size); 28*6777b538SAndroid Build Coastguard Worker #else 29*6777b538SAndroid Build Coastguard Worker *result = malloc(size); 30*6777b538SAndroid Build Coastguard Worker #endif 31*6777b538SAndroid Build Coastguard Worker return *result != nullptr; 32*6777b538SAndroid Build Coastguard Worker } 33*6777b538SAndroid Build Coastguard Worker UncheckedFree(void * ptr)34*6777b538SAndroid Build Coastguard Workervoid UncheckedFree(void* ptr) { 35*6777b538SAndroid Build Coastguard Worker #if BUILDFLAG(USE_ALLOCATOR_SHIM) 36*6777b538SAndroid Build Coastguard Worker allocator_shim::UncheckedFree(ptr); 37*6777b538SAndroid Build Coastguard Worker #else 38*6777b538SAndroid Build Coastguard Worker free(ptr); 39*6777b538SAndroid Build Coastguard Worker #endif 40*6777b538SAndroid Build Coastguard Worker } 41*6777b538SAndroid Build Coastguard Worker 42*6777b538SAndroid Build Coastguard Worker } // namespace base 43