Fix build for UCLIBC platforms

malloc_usable_size does not exist in UCLIBC, so fall back to just
returning 0 for SkVarAlloc::heap_size().

BUG=skia:

Review URL: https://codereview.chromium.org/1006073003
This commit is contained in:
smcgruer 2015-03-16 14:45:00 -07:00 коммит произвёл Commit bot
Родитель 6f7f2012ee
Коммит b83205a538
2 изменённых файлов: 4 добавлений и 4 удалений

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

@ -47,7 +47,7 @@ void SkVarAlloc::makeSpace(size_t bytes, unsigned flags) {
#if defined(SK_BUILD_FOR_MAC)
SkASSERT(alloc == malloc_good_size(alloc));
#elif defined(SK_BUILD_FOR_UNIX)
#elif defined(SK_BUILD_FOR_UNIX) && !defined(__UCLIBC__)
// TODO(mtklein): tune so we can assert something like this
//SkASSERT(alloc == malloc_usable_size(fBlock));
#endif
@ -56,7 +56,7 @@ void SkVarAlloc::makeSpace(size_t bytes, unsigned flags) {
static size_t heap_size(void* p) {
#if defined(SK_BUILD_FOR_MAC)
return malloc_size(p);
#elif defined(SK_BUILD_FOR_UNIX)
#elif defined(SK_BUILD_FOR_UNIX) && !defined(__UCLIBC__)
return malloc_usable_size(p);
#elif defined(SK_BUILD_FOR_WIN32)
return _msize(p);

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

@ -6,8 +6,8 @@ DEF_TEST(VarAlloc, r) {
char* p = va.alloc(128, SK_MALLOC_THROW);
sk_bzero(p, 128); // Just checking this is safe.
#ifndef SK_BUILD_FOR_ANDROID
// This method will always return 0 on Android.
#if !defined(SK_BUILD_FOR_ANDROID) && !defined(__UCLIBC__)
// This method will always return 0 on Android and UCLIBC platforms.
REPORTER_ASSERT(r, va.approxBytesAllocated() >= 128);
#endif
}