I got skia native crash when return ~SkSpriteBlitter()
, below is the tombstone and stack trace. Does anyone get this issue before?
[tombstone]
signal 11 (SIGSEGV), fault addr 00000000
r0 bec3a434 r1 ab248078 r2 ab248080 r3 ab2494dc
r4 bec3a558 r5 bec3a434 r6 002ae6b0 r7 bec3a558
r8 00000000 r9 bec3a5e8 10 bec3a434 fp 00000000
ip 000002dc sp bec3a2d8 lr ab169da4 pc 00000000
Stack Trace:
signal 11 (SIGSEGV), fault addr 00000000
r0 bec3a434 r1 ab248078 r2 ab248080 r3 ab2494dc
r4 bec3a558 r5 bec3a434 r6 002ae6b0 r7 bec3a558
r8 00000000 r9 bec3a5e8 10 bec3a434 fp 00000000
ip 000002dc sp bec3a2d8 lr ab169da4 pc 00000000 cpsr 20010010
#00 pc 00000000
#01 pc 00069da0 /system/lib/libskia.so
code around pc:
code around lr:
ab169d84 e793100c e1a04000 e5900008 e2812008
ab169d94 e5842000 ebffa1ac e1a00004 ebffd501
ab169da4 e1a00004 e8bd8010 000df754 00000278
ab169db4 e59f302c e59fc02c e92d4010 e08f3003
ab169dc4 e1a04000 e793000c e5841008 e2802008
stack:
bec3a298 bec3a434 [stack]
bec3a29c 000000ff
bec3a2a0 00145a70 [heap]
bec3a2a4 ab1978d0 /system/lib/libskia.so
bec3a2a8 ab249d8c /system/lib/libskia.so
bec3a2ac 46d9bc40 /dev/ashmem (deleted)
bec3a2b0 47367c40 /dev/pmem
bec3a2b4 00000001
bec3a2b8 000003c0
bec3a2bc 000003c0
bec3a2c0 000000f0
bec3a2c4 00145a70 [heap]
bec3a2c8 bec3a434 [stack]
bec3a2cc 002ae6b0 [heap]
bec3a2d0 df002777
bec3a2d4 e3a070ad
#01 bec3a2d8 bec3a5e8 [stack]
bec3a2dc bec3a434 [stack]
bec3a2e0 00000000
bec3a2e4 ab174d90 /system/lib/libskia.so
bec3a2e8 00000140
bec3a2ec bec3a434 [stack]
bec3a2f0 00000124
bec3a2f4 0000003a
bec3a2f8 00000003
bec3a2fc 00000000
bec3a300 bec3a434 [stack]
bec3a304 00000000
bec3a308 8096c560 /system/lib/libdvm.so
bec3a30c afa013ad /system/lib/liblog.so
bec3a310 bec3a734 [stack]
bec3a314 465f4347
bec3a318 4d5f524f
bec3a31c 4f4c4c41
[stack trace]
signal 11 (SIGSEGV), fault addr 00000000
r0 bec3a434 r1 ab248078 r2 ab248080 r3 ab2494dc
r4 bec3a558 r5 bec3a434 r6 002ae6b0 r7 bec3a558
r8 00000000 r9 bec3a5e8 10 bec3a434 fp 00000000
ip 000002dc sp bec3a2d8 lr ab169da4 pc 00000000
Stack Trace:
RELADDR FUNCTION FILE:LINE
00000000 (unknown) (unknown)
v------> ~SkSpriteBlitter external/skia/src/core/SkBlitter_Sprite.cpp:29
00069da0 SkSpriteBlitter::~SkSpriteBlitter() external/skia/src/core/SkBlitter_Sprite.cpp:29
Stack Data:
ADDR VALUE FILE:LINE/FUNCTION
bec3a298 bec3a434
bec3a29c 000000ff
bec3a2a0 00145a70
bec3a2a4 ab1978d0 external/skia/src/core/SkSpriteBlitter_ARGB32.cpp:313
SkSpriteBlitter::ChooseD32(SkBitmap const&, SkPaint const&, void*, unsigned int)
bec3a2a8 ab249d8c external/skia/include/core/SkPixelRef.h:36
~SkPixelRef
bec3a2ac 46d9bc40 (unknown)
(unknown)开发者_Go百科
bec3a2b0 47367c40 (unknown)
(unknown)
bec3a2b4 00000001
bec3a2b8 000003c0
bec3a2bc 000003c0
bec3a2c0 000000f0
bec3a2c4 00145a70
bec3a2c8 bec3a434
bec3a2cc 002ae6b0
bec3a2d0 df002777
bec3a2d4 e3a070ad
bec3a2d8 bec3a5e8
bec3a2dc bec3a434
bec3a2e0 00000000
bec3a2e4 ab174d90 external/skia/src/core/SkDraw.cpp:1093
SkDraw::drawBitmap(SkBitmap const&, SkMatrix const&, SkPaint const&) const
bec3a2e8 00000140
bec3a2ec bec3a434
bec3a2f0 00000124
bec3a2f4 0000003a
bec3a2f8 00000003
bec3a2fc 00000000
bec3a300 bec3a434
bec3a304 00000000
bec3a308 8096c560 ??:0
??
bec3a30c afa013ad system/core/liblog/logd_write.c:209
__android_log_print
bec3a310 bec3a734
bec3a314 465f4347
bec3a318 4d5f524f
bec3a31c 4f4c4c41
It's a null pointer in a C library. Somewhere in the stack, you are calling something, which calls something, which eventually calls into the library. Look carefully at all the parameters that you are using on that chain of calls. Mostly likely, one of them is wrong, causing the library to barf.
Check all return values, too. Bit surprised to see that the library has not been stripped of symbols.
精彩评论