diff options
Diffstat (limited to 'include/core/SkTypes.h')
-rw-r--r-- | include/core/SkTypes.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/core/SkTypes.h b/include/core/SkTypes.h index 039369119e..f2245184e6 100644 --- a/include/core/SkTypes.h +++ b/include/core/SkTypes.h @@ -49,7 +49,7 @@ enum { }; /** Return a block of memory (at least 4-byte aligned) of at least the specified size. If the requested memory cannot be returned, either - return null (if SK_MALLOC_TEMP bit is clear) or call sk_throw() + return null (if SK_MALLOC_TEMP bit is clear) or throw an exception (if SK_MALLOC_TEMP bit is set). To free the memory, call sk_free(). */ SK_API extern void* sk_malloc_flags(size_t size, unsigned flags); @@ -64,6 +64,14 @@ SK_API extern void* sk_realloc_throw(void* buffer, size_t size); */ SK_API extern void sk_free(void*); +/** Much like calloc: returns a pointer to at least size zero bytes, or NULL on failure. + */ +SK_API extern void* sk_calloc(size_t size); + +/** Same as sk_calloc, but throws an exception instead of returning NULL on failure. + */ +SK_API extern void* sk_calloc_throw(size_t size); + // bzero is safer than memset, but we can't rely on it, so... sk_bzero() static inline void sk_bzero(void* buffer, size_t size) { memset(buffer, 0, size); |