add simple port of memory APIs, to be used as a template for other platforms

that may want to add new_handler logic or other hooks.



git-svn-id: http://skia.googlecode.com/svn/trunk@167 2bbb7eff-a529-9590-31e7-b0007b416f81
This commit is contained in:
reed@android.com 2009-05-04 19:24:56 +00:00
Родитель a6260ff569
Коммит 7a56108264
1 изменённых файлов: 45 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,45 @@
#include "SkTypes.h"
#include <stdio.h>
#include <stdlib.h>
void sk_throw() {
SkASSERT(!"sk_throw");
abort();
}
void sk_out_of_memory(void) {
SkASSERT(!"sk_out_of_memory");
abort();
}
void* sk_malloc_throw(size_t size) {
return sk_malloc_flags(size, SK_MALLOC_THROW);
}
void* sk_realloc_throw(void* addr, size_t size) {
void* p = realloc(addr, size);
if (size == 0) {
return p;
}
if (p == NULL) {
sk_throw();
}
return p;
}
void sk_free(void* p) {
if (p) {
free(p);
}
}
void* sk_malloc_flags(size_t size, unsigned flags) {
void* p = malloc(size);
if (p == NULL) {
if (flags & SK_MALLOC_THROW) {
sk_throw();
}
}
return p;
}