| // Copyright (c) 2013 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. | |
| #include "base/process/memory.h" | |
| #include <stddef.h> | |
| #include <stdlib.h> | |
| namespace base { | |
| void EnableTerminationOnOutOfMemory() { | |
| } | |
| void EnableTerminationOnHeapCorruption() { | |
| } | |
| bool AdjustOOMScore(ProcessId process, int score) { | |
| return false; | |
| } | |
| void TerminateBecauseOutOfMemory(size_t size) { | |
| abort(); | |
| } | |
| // UncheckedMalloc and Calloc exist so that platforms making use of | |
| // EnableTerminationOnOutOfMemory have a way to allocate memory without | |
| // crashing. This _stubs.cc file is for platforms that do not support | |
| // EnableTerminationOnOutOfMemory (note the empty implementation above). As | |
| // such, these two Unchecked.alloc functions need only trivially pass-through to | |
| // their respective stdlib function since those functions will return null on a | |
| // failure to allocate. | |
| bool UncheckedMalloc(size_t size, void** result) { | |
| *result = malloc(size); | |
| return *result != nullptr; | |
| } | |
| bool UncheckedCalloc(size_t num_items, size_t size, void** result) { | |
| *result = calloc(num_items, size); | |
| return *result != nullptr; | |
| } | |
| } // namespace base |