blob: f5300606f2eaf5cd7190e6203659e39e1aeb8dcf [file] [log] [blame]
// Copyright 2020 PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Deliberately not including opj_malloc.h, which has poisoned malloc and
// friends.
#include "core/fxcrt/fx_memory.h"
#include "third_party/base/memory/aligned_memory.h"
extern "C" {
void* opj_malloc(size_t size) {
return FXMEM_DefaultAlloc(size);
}
void* opj_calloc(size_t numOfElements, size_t sizeOfElements) {
return FXMEM_DefaultCalloc(numOfElements, sizeOfElements);
}
void* opj_aligned_malloc(size_t size) {
return size ? pdfium::base::AlignedAlloc(size, 16) : nullptr;
}
void opj_aligned_free(void* ptr) {
pdfium::base::AlignedFree(ptr);
}
void* opj_aligned_32_malloc(size_t size) {
return size ? pdfium::base::AlignedAlloc(size, 32) : nullptr;
}
void* opj_realloc(void* m, size_t s) {
return FXMEM_DefaultRealloc(m, s);
}
void opj_free(void* m) {
if (m)
FXMEM_DefaultFree(m);
}
} // extern "C"