返回 ~SkSpriteBlitter() 时我遇到了skia本机崩溃

发布于 2024-10-03 12:53:11 字数 4088 浏览 5 评论 0原文

返回~SkSpriteBlitter()时,我遇到了skia本机崩溃,下面是逻辑删除和堆栈跟踪。以前有人遇到过这个问题吗?

[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)
  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

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)
  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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

断桥再见 2024-10-10 12:53:11

它是 C 库中的空指针。在堆栈的某个地方,您正在调用某些内容,该内容又调用某些内容,最终又调用到库中。仔细查看您在该调用链上使用的所有参数。最有可能的是,其中之一是错误的,导致图书馆呕吐。

还要检查所有返回值。有点惊讶地发现库中的符号没有被删除。

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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文