开发者

I got skia native crash when return ~SkSpriteBlitter()

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.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜