墓碑:
05-24 09:56:30.999 W/chromium( 2075): external/chromium/net/disk_cache/backend_impl.cc:1829: [0524/095631:WARNING:backend_impl.cc(1829)] Destroying invalid entry.
05-24 09:56:31.019 W/chromium( 2075): external/chromium/net/disk_cache/backend_impl.cc:1829: [0524/095631:WARNING:backend_impl.cc(1829)] Destroying invalid entry.
05-24 09:56:31.069 W/chromium( 2075): external/chromium/net/disk_cache/backend_impl.cc:1829: [0524/095631:WARNING:backend_impl.cc(1829)] Destroying invalid entry.
05-24 09:56:31.289 D/ ( 2075): ++++++++++++++++++++++Setting up the canvas ID to be 1
05-24 09:56:31.499 W/chromium( 2075): external/chromium/net/disk_cache/backend_impl.cc:1829: [0524/095631:WARNING:backend_impl.cc(1829)] Destroying invalid entry.
05-24 09:56:31.629 D/ ( 2075): ++++++++++++++++++++++Setting up the canvas ID to be 2
05-24 09:56:32.409 W/chromium( 2075): external/chromium/net/disk_cache/backend_impl.cc:1829: [0524/095632:WARNING:backend_impl.cc(1829)] Destroying invalid entry.
05-24 09:56:32.429 F/libc ( 2075): Fatal signal 11 (SIGSEGV) at 0x6628eab0 (code=1)
05-24 09:56:32.779 I/battery_level( 316): [99,4160,26]
05-24 09:56:32.929 I/DEBUG ( 2021): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
05-24 09:56:32.929 I/DEBUG ( 2021): Build fingerprint: 'qcom/msm7627a/msm7627a:4.0.4/IMM76I/TBW592315_8532_V006002:eng/test-keys'
05-24 09:56:32.929 I/DEBUG ( 2021): pid: 2075, tid: 2101 >>> com.android.browser <<<
05-24 09:56:32.929 I/DEBUG ( 2021): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 6628eab0
05-24 09:56:32.929 I/DEBUG ( 2021): r0 6628ea00 r1 00fdd890 r2 00000000 r3 00fd7630
05-24 09:56:32.929 I/DEBUG ( 2021): r4 0069002f r5 00007f41 r6 00000140 r7 005f3c3c
05-24 09:56:32.929 I/DEBUG ( 2021): r8 00627540 r9 00000000 10 00000000 fp 00000000
05-24 09:56:32.929 I/DEBUG ( 2021): ip 00000032 sp 505a3b10 lr 4ef47aa9 pc 4ee35416 cpsr 20000030
05-24 09:56:32.929 I/DEBUG ( 2021): d0 7fffffff7fffffff d1 000000d67fffffff
05-24 09:56:32.929 I/DEBUG ( 2021): d2 000001087fffffff d3 000001400000000a
05-24 09:56:32.929 I/DEBUG ( 2021): d4 000053467fffffff d5 0000555c7fffffff
05-24 09:56:32.929 I/DEBUG ( 2021): d6 000001360000000a d7 3f8000003f800000
05-24 09:56:32.929 I/DEBUG ( 2021): d8 0000000000000000 d9 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d10 0000000000000000 d11 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d12 0000000000000000 d13 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d14 0000000000000000 d15 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d16 0000000000000000 d17 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d18 0000580a7fffffff d19 00005a207fffffff
05-24 09:56:32.929 I/DEBUG ( 2021): d20 000001360000000a d21 00007ee27fffffff
05-24 09:56:32.929 I/DEBUG ( 2021): d22 00007ef47fffffff d23 000000940000000a
05-24 09:56:32.929 I/DEBUG ( 2021): d24 3f3dca01dca01dca d25 0000000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d26 bffb333333333335 d27 3eb0c6f7a0b5ed8d
05-24 09:56:32.929 I/DEBUG ( 2021): d28 3fe388f9fb2975c8 d29 3ff0000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): d30 0000000000000000 d31 3ff0000000000000
05-24 09:56:32.929 I/DEBUG ( 2021): scr 60000011
05-24 09:56:32.929 I/DEBUG ( 2021):
05-24 09:56:33.069 I/DEBUG ( 2021): #00 pc 00143416 /system/lib/libwebcore.so
05-24 09:56:33.069 I/DEBUG ( 2021): #01 pc 00255aa4 /system/lib/libwebcore.so
05-24 09:56:33.069 I/DEBUG ( 2021): #02 pc 00255e08 /system/lib/libwebcore.so
05-24 09:56:33.069 I/DEBUG ( 2021): #03 pc 00255e74 /system/lib/libwebcore.so
05-24 09:56:33.069 I/DEBUG ( 2021): #04 pc 00020130 /system/lib/libdvm.so (dvmPlatformInvoke)
05-24 09:56:33.069 I/DEBUG ( 2021): #05 pc 0005a01e /system/lib/libdvm.so (_Z16dvmCallJNIMethodPKjP6JValuePK6MethodP6Thread)
05-24 09:56:33.069 I/DEBUG ( 2021):
05-24 09:56:33.069 I/DEBUG ( 2021): code around pc:
05-24 09:56:33.069 I/DEBUG ( 2021): 4ee353f4 477069c0 32f8f8d0 6a18b10b 2000b900 .ipG...2...j...
05-24 09:56:33.069 I/DEBUG ( 2021): 4ee35404 bf004770 f8d0b510 b14b32f0 b13c6a1c pG.......2K..j<.
05-24 09:56:33.069 I/DEBUG ( 2021): 4ee35414 f8d06820 462030b0 b1084798 e0004620 h...0 F.G.. F..
05-24 09:56:33.069 I/DEBUG ( 2021): 4ee35424 bd102000 4606b570 6b44460d 4620e004 . ..p..F.FDk.. F
05-24 09:56:33.069 I/DEBUG ( 2021): 4ee35434 f7ff4629 6ae4fff7 d1f82c00 32f8f8d6 )F.....j.,.....2
05-24 09:56:33.079 I/DEBUG ( 2021):
05-24 09:56:33.079 I/DEBUG ( 2021): code around lr:
05-24 09:56:33.079 I/DEBUG ( 2021): 4ef47a88 f8cd961c 4649906c 901d4605 f840a81e ....l.IF.F....@.
05-24 09:56:33.079 I/DEBUG ( 2021): 4ef47a98 90059d10 301c6d60 9804e050 fcb0f6ed ....`m.0P.......
05-24 09:56:33.079 I/DEBUG ( 2021): 4ef47aa8 28004683 6843d046 c02df893 01c1f3cc .F.(F.Ch..-.....
05-24 09:56:33.079 I/DEBUG ( 2021): 4ef47ab8 d13f2900 f8d09a04 f8d0a024 f1029028 .)?.....$...(...
05-24 09:56:33.079 I/DEBUG ( 2021): 4ef47ac8 e00c001c 93034618 fc9af6ed b1189b03 .....F..........
05-24 09:56:33.079 I/DEBUG ( 2021):
05-24 09:56:33.079 I/DEBUG ( 2021): memory map around addr 6628eab0:
05-24 09:56:33.079 I/DEBUG ( 2021): 5ee48000-5ee68000
05-24 09:56:33.079 I/DEBUG ( 2021): (no map for address)
05-24 09:56:33.079 I/DEBUG ( 2021): b0001000-b0009000 /system/bin/linker
05-24 09:56:33.079 I/DEBUG ( 2021):
05-24 09:56:33.079 I/DEBUG ( 2021): stack:
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ad0 408aaebb /system/lib/libdvm.so
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ad4 010d4060 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ad8 010d2678 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3adc 010d2678 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ae0 005f3c3c [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ae4 505a3bf0
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3ae8 4bd9fdf8
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3aec 4d26c6c1 /data/dalvik-cache/system@[email protected]@classes.dex
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3af0 00b7ec48 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3af4 4ef45da5 /system/lib/libwebcore.so
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3af8 00627540 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3afc 00000001
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b00 005f3bc0 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b04 4ee36b3f /system/lib/libwebcore.so
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b08 df0027ad
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b0c 00000000
05-24 09:56:33.079 I/DEBUG ( 2021): #00 505a3b10 005f3bc0 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b14 4ef47aa9 /system/lib/libwebcore.so
05-24 09:56:33.079 I/DEBUG ( 2021): #01 505a3b18 00000032
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b1c 0116a5a4 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b20 00000268
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b24 0065f5a0 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b28 00fdd890 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b2c 505a3b80
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b30 013ef740 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b34 400e6598
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b38 00000020
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b3c 400e6554
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b40 013ef748 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b44 013ef748 [heap]
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b48 505a3b74
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b4c 4bedc498 /dev/ashmem/dalvik-LinearAlloc (deleted)
05-24 09:56:33.079 I/DEBUG ( 2021): 505a3b50 408c7fe0 /system/lib/libdvm.so
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b54 fba765f4
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b58 b0d00005
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b5c 505a3b94
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b60 408aaebb /system/lib/libdvm.so
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b64 010768a8 [heap]
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b68 006ab848 [heap]
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b6c b0d00005
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b70 4bd9fdf8
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b74 4d26c6c1 /data/dalvik-cache/system@[email protected]@classes.dex
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b78 505a3c04
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b7c 4085c213 /system/lib/libdvm.so
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b80 00000000
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b84 00000000
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b88 00000140
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b8c 00007f41
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b90 a4400001
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b94 005f3bc0 [heap]
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b98 010768a8 [heap]
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3b9c 505a3bd0
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3ba0 005f3c3c [heap]
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3ba4 505a3bf0
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3ba8 4bd9fdf8
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3bac 4d26c6c1 /data/dalvik-cache/system@[email protected]@classes.dex
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3bb0 505a3c04
05-24 09:56:33.089 I/DEBUG ( 2021): 505a3bb4 4ef47e0d /system/lib/libwebcore.so
libwebcore.so nm:
00143268 0000007e t WebCore::dispatchEventsOnWindowAndFocusedNode(WebCore::Document*, bool)
001432e8 000000a4 t WebCore::FocusController::setActive(bool)
0014338c 00000062 t WebCore::FocusController::setFocused(bool)
001433f0 00000008 t WebCore::Frame::settings() const
001433f8 0000000e t WebCore::Frame::contentRenderer() const
00143408 00000020 t WebCore::Frame::ownerRenderer() const
00143428 0000003a t WebCore::Frame::updateContentsScale(float)
00143464 00000018 t WTF::RefPtr<WebCore::DOMWindow>::operator=(WebCore::DOMWindow*)
0014347c 0000002e t WebCore::Frame::disconnectOwnerElement()
libwebcore.so objdump:
00143408 <_ZNK7WebCore5Frame13ownerRendererEv>:
143408: b510 push {r4, lr}
14340a: f8d0 32f0 ldr.w r3, [r0, #752]
14340e: b14b cbz r3, 143424 <_ZNK7WebCore5Frame13ownerRendererEv+0x1c>
143410: 6a1c ldr r4, [r3, #32]
143412: b13c cbz r4, 143424 <_ZNK7WebCore5Frame13ownerRendererEv+0x1c>
143414: 6820 ldr r0, [r4, #0]
143416: f8d0 30b0 ldr.w r3, [r0, #176]
14341a: 4620 mov r0, r4
14341c: 4798 blx r3
14341e: b108 cbz r0, 143424 <_ZNK7WebCore5Frame13ownerRendererEv+0x1c>
143420: 4620 mov r0, r4
143422: e000 b.n 143426 <_ZNK7WebCore5Frame13ownerRendererEv+0x1e>
143424: 2000 movs r0, #0
143426: bd10 pop {r4, pc}
我将这个问题缩小到C ++函数Frame :: ownerRenderer(),
源代码:
RenderPart* Frame::ownerRenderer() const
{
HTMLFrameOwnerElement* ownerElement = m_ownerElement;
if (!ownerElement)
return 0;
RenderObject* object = ownerElement->renderer();
if (!object)
return 0;
// FIXME: If <object> is ever fixed to disassociate itself from frames
// that it has started but canceled, then this can turn into an ASSERT
// since m_ownerElement would be 0 when the load is canceled.
// https://bugs.webkit.org/show_bug.cgi?id=18585
if (!object->isRenderPart())
return 0;
return toRenderPart(object);
}
但是我感到困惑的是,在此函数中,每个引用都有assert(NULL)进程,为什么它还会产生SIGSEGV?
最佳答案
指针不是NULL
的事实并不意味着它们也是有效的指针。您确定:
您有正确的m_ownerElement
吗? (即:它是由您分配的,没有人同时释放它)
您是否有正确的object
(即:ownerElement->renderer()
返回可用的东西)?
您是否有正确的this
对象?有时,您可以在无效对象上调用函数。
通常,这些是此类问题的主要来源。为指针(m_ownerElement
和object
)放入一些打印输出,在它们的分配位置和使用位置。如果它们不相同,则有导致错误的原因。
关于android - 为什么SIGSEGV仍然发生?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16728668/