Hi All,
Is anybody experiencing crashes in libskia.so ~ triggered by BitmapDC::getBitmapFromJavaShadowStroke
********** Crash dump: **********
signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000003
Stack frame #00 pc 0000f9f6 /system/lib/libc.so (dlmalloc+1209)
Stack frame #01 pc 0000d9ab /system/lib/libc.so (malloc+10)
Stack frame #02 pc 00124010 /system/lib/libskia.so (sk_malloc_flags(unsigned int, unsigned int)+8)
Stack frame #03 pc 00090158 /system/lib/libskia.so (SkChunkAlloc::newBlock(unsigned int, SkChunkAlloc::AllocFailType)+36)
Stack frame #04 pc 000901c8 /system/lib/libskia.so (SkChunkAlloc::alloc(unsigned int, SkChunkAlloc::AllocFailType)+48)
Stack frame #05 pc 000a2374 /system/lib/libskia.so (SkGlyphCache::lookupMetrics(unsigned int, SkGlyphCache::MetricsType)+216)
Stack frame #06 pc 000a2534 /system/lib/libskia.so (SkGlyphCache::getGlyphIDMetrics(unsigned short)+56)
Stack frame #07 pc 000ae52c /system/lib/libskia.so (SkPaint::getTextWidths(void const*, unsigned int, float*, SkRect*) const+272)
Stack frame #08 pc 00075e4f /system/lib/libandroid_runtime.so
Stack frame #09 pc 00026d04 /system/lib/libharfbuzz_ng.so
Stack frame #10 pc 0000cd60 /system/lib/libharfbuzz_ng.so (hb_shape_plan_execute+208)
Stack frame #11 pc 0000c728 /system/lib/libharfbuzz_ng.so (hb_shape_full+80)
Stack frame #12 pc 0000c760 /system/lib/libharfbuzz_ng.so (hb_shape+16)
Stack frame #13 pc 0007b6ef /system/lib/libandroid_runtime.so (android::TextLayoutShaper::shapeFontRun(SkPaint const*)+202)
Stack frame #14 pc 0007b7d1 /system/lib/libandroid_runtime.so (android::TextLayoutShaper::computeRunValues(SkPaint const*, unsigned short const*, unsigned int, unsigned int, unsigned int, bool, android::Vector<float>*, float*, android::Vector<unsigned short>*, android::Vector<float>*)+210)
Stack frame #15 pc 0007ba8b /system/lib/libandroid_runtime.so (android::TextLayoutShaper::computeValues(SkPaint const*, unsigned short const*, unsigned int, unsigned int, unsigned int, int, android::Vector<float>*, float*, android::Vector<unsigned short>*, android::Vector<float>*)+422)
Stack frame #16 pc 0007bb31 /system/lib/libandroid_runtime.so (android::TextLayoutShaper::computeValues(android::TextLayoutValue*, SkPaint const*, unsigned short const*, unsigned int, unsigned int, unsigned int, int)+44)
Stack frame #17 pc 0007bfef /system/lib/libandroid_runtime.so (android::TextLayoutCache::getValue(SkPaint const*, unsigned short const*, int, int, int, int)+274)
Stack frame #18 pc 0007c313 /system/lib/libandroid_runtime.so (android::TextLayoutEngine::getValue(SkPaint const*, unsigned short const*, int, int, int, int)+34)
Stack frame #19 pc 0007ac27 /system/lib/libandroid_runtime.so (android::TextLayout::getTextRunAdvances(SkPaint*, unsigned short const*, int, int, int, int, float*, float*)+42)
Stack frame #20 pc 000779bb /system/lib/libandroid_runtime.so
Stack frame #21 pc 0001dc4c /system/lib/libdvm.so (dvmPlatformInvoke+112)
Stack frame #22 pc 0004dcab /system/lib/libdvm.so (dvmCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+394)
Stack frame #23 pc 000385e1 /system/lib/libdvm.so (dvmCheckCallJNIMethod(unsigned int const*, JValue*, Method const*, Thread*)+8)
Stack frame #24 pc 00027060 /system/lib/libdvm.so
Stack frame #25 pc 0002b580 /system/lib/libdvm.so (dvmInterpret(Thread*, Method const*, JValue*)+184)
Stack frame #26 pc 0005fcbd /system/lib/libdvm.so (dvmCallMethodV(Thread*, Method const*, Object*, bool, JValue*, std::__va_list)+292)
Stack frame #27 pc 000499ab /system/lib/libdvm.so
Stack frame #28 pc 0003cb3d /system/lib/libdvm.so
Stack frame #29 pc 001ae690 /data/app-lib/…../libgame.so (_JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+60): Routine _JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...) at /…./android/android-ndk-r9c/platforms/android-13/arch-arm/usr/include/jni.h:807
Stack frame #30 pc 0028b2b8 /data/app-lib/.../libgame.so (cocos2d::BitmapDC::getBitmapFromJavaShadowStroke(char const*, int, int, cocos2d::CCImage::ETextAlign, char const*, float, float, float, float, bool, float, float, float, float, bool, float, float, float, float)+648): Routine cocos2d::BitmapDC::getBitmapFromJavaShadowStroke(char const*, int, int, cocos2d::CCImage::ETextAlign, char const*, float, float, float, float, bool, float, float, float, float, bool, float, float, float, float) at
I’m using NDK r9c. Bug occasionally happens on any Android version, and does not always have the same stack trace - but is always crashing in libskia.so
Thanks