求助 1.8.1崩溃了

  • Creator 版本:1.8.1

  • 目标平台: iOS

  • 详细报错信息,包含调用堆栈:
    JavaScriptCore`JSC::SlotVisitor::drain(WTF::MonotonicTime)::$_3::operator()(JSC::MarkStackArray&) const:
    0x18cae3cac <+0>: stp x24, x23, [sp, #-0x40]!
    0x18cae3cb0 <+4>: stp x22, x21, [sp, #0x10]
    0x18cae3cb4 <+8>: stp x20, x19, [sp, #0x20]
    0x18cae3cb8 <+12>: stp x29, x30, [sp, #0x30]
    0x18cae3cbc <+16>: add x29, sp, #0x30 ; =0x30
    0x18cae3cc0 <+20>: mov x19, x1
    0x18cae3cc4 <+24>: mov x20, x0
    0x18cae3cc8 <+28>: ldr x8, [x19, #0x10]
    0x18cae3ccc <+32>: cbnz x8, 0x18cae3d2c ; <+128>
    0x18cae3cd0 <+36>: ldr x0, [x19]
    0x18cae3cd4 <+40>: ldr x8, [x0, #0x8]
    0x18cae3cd8 <+44>: cbz x8, 0x18cae3cf8 ; <+76>
    0x18cae3cdc <+48>: cbz x0, 0x18cae3d14 ; <+104>
    0x18cae3ce0 <+52>: ldp x8, x9, [x0]
    0x18cae3ce4 <+56>: cbz x8, 0x18cae3d00 ; <+84>
    0x18cae3ce8 <+60>: str x9, [x8, #0x8]
    0x18cae3cec <+64>: ldr x9, [x0, #0x8]
    0x18cae3cf0 <+68>: cbnz x9, 0x18cae3d08 ; <+92>
    0x18cae3cf4 <+72>: b 0x18cae3d10 ; <+100>
    0x18cae3cf8 <+76>: mov w0, #0x0
    0x18cae3cfc <+80>: b 0x18cae3e58 ; <+428>
    0x18cae3d00 <+84>: str x9, [x19]
    0x18cae3d04 <+88>: cbz x9, 0x18cae3d10 ; <+100>
    0x18cae3d08 <+92>: str x8, [x9]
    0x18cae3d0c <+96>: b 0x18cae3d14 ; <+104>
    0x18cae3d10 <+100>: str x8, [x19, #0x8]
    0x18cae3d14 <+104>: bl 0x18c237f58 ; WTF::fastFree(void*)
    0x18cae3d18 <+108>: ldr x8, [x19, #0x18]
    0x18cae3d1c <+112>: sub x8, x8, #0x1 ; =0x1
    0x18cae3d20 <+116>: str x8, [x19, #0x18]
    0x18cae3d24 <+120>: orr w8, wzr, #0x1fe
    0x18cae3d28 <+124>: str x8, [x19, #0x10]
    0x18cae3d2c <+128>: cmp x20, x19
    0x18cae3d30 <+132>: cset w9, eq
    0x18cae3d34 <+136>: strb w9, [x20, #0xa8]
    0x18cae3d38 <+140>: adrp x9, 172349
    0x18cae3d3c <+144>: add x9, x9, #0xf90 ; =0xf90
    0x18cae3d40 <+148>: ldr w9, [x9, #0x1260]
    0x18cae3d44 <+152>: orr w0, wzr, #0x1
    0x18cae3d48 <+156>: cmp w9, #0x0 ; =0x0
    0x18cae3d4c <+160>: ccmp x8, #0x0, #0x4, ne
    0x18cae3d50 <+164>: b.eq 0x18cae3e58 ; <+428>
    0x18cae3d54 <+168>: sub w22, w0, w9
    0x18cae3d58 <+172>: adrp x23, 166745
    0x18cae3d5c <+176>: add x23, x23, #0xf98 ; =0xf98
    0x18cae3d60 <+180>: b 0x18cae3d78 ; <+204>
    0x18cae3d64 <+184>: ldrb w8, [x20, #0xa8]
    0x18cae3d68 <+188>: cbz w8, 0x18cae3e40 ; <+404>
    0x18cae3d6c <+192>: mov x1, x21
    0x18cae3d70 <+196>: bl 0x18c7f1fac ; JSC::HeapSnapshotBuilder::appendNode(JSC::JSCell*)
    0x18cae3d74 <+200>: b 0x18cae3e40 ; <+404>
    0x18cae3d78 <+204>: ldr x9, [x19]
    0x18cae3d7c <+208>: sub x8, x8, #0x1 ; =0x1
    0x18cae3d80 <+212>: add x9, x9, x8, lsl #3
    0x18cae3d84 <+216>: str x8, [x19, #0x10]
    0x18cae3d88 <+220>: ldr x21, [x9, #0x10]
    0x18cae3d8c <+224>: str x21, [x20, #0xa0]
    0x18cae3d90 <+228>: strb wzr, [x21, #0x7]
    0x18cae3d94 <+232>: dmb ish
    0x18cae3d98 <+236>: ldrb w8, [x21, #0x5]
    0x18cae3d9c <+240>: cmp w8, #0x22 ; =0x22
    0x18cae3da0 <+244>: b.eq 0x18cae3dcc ; <+288>
    0x18cae3da4 <+248>: cmp w8, #0x18 ; =0x18
    0x18cae3da8 <+252>: b.eq 0x18cae3de4 ; <+312>
    0x18cae3dac <+256>: cmp w8, #0x6 ; =0x6
    0x18cae3db0 <+260>: b.ne 0x18cae3dfc ; <+336>
    0x18cae3db4 <+264>: mov x0, x21
    0x18cae3db8 <+268>: mov x1, x20
    0x18cae3dbc <+272>: bl 0x18c2494a8 ; JSC::JSString::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
    0x18cae3dc0 <+276>: ldr x0, [x20, #0x98]
    0x18cae3dc4 <+280>: cbz x0, 0x18cae3e40 ; <+404>
    0x18cae3dc8 <+284>: b 0x18cae3d64 ; <+184>
    0x18cae3dcc <+288>: mov x0, x21
    0x18cae3dd0 <+292>: mov x1, x20
    0x18cae3dd4 <+296>: bl 0x18c2ed4bc ; JSC::JSObject::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
    0x18cae3dd8 <+300>: ldr x0, [x20, #0x98]
    0x18cae3ddc <+304>: cbz x0, 0x18cae3e40 ; <+404>
    0x18cae3de0 <+308>: b 0x18cae3d64 ; <+184>
    0x18cae3de4 <+312>: mov x0, x21
    0x18cae3de8 <+316>: mov x1, x20
    0x18cae3dec <+320>: bl 0x18c2eec5c ; JSC::JSFinalObject::visitChildren(JSC::JSCell*, JSC::SlotVisitor&)
    0x18cae3df0 <+324>: ldr x0, [x20, #0x98]
    0x18cae3df4 <+328>: cbz x0, 0x18cae3e40 ; <+404>
    0x18cae3df8 <+332>: b 0x18cae3d64 ; <+184>
    0x18cae3dfc <+336>: ldr x8, [x20, #0x90]
    0x18cae3e00 <+340>: ldr x8, [x8, #0x388]
    0x18cae3e04 <+344>: ldr w9, [x21]
    0x18cae3e08 <+348>: ldr x8, [x8, #0xf8]
    0x18cae3e0c <+352>: and x9, x9, #0x7fffffff
    0x18cae3e10 <+356>: ldr x8, [x8, x9, lsl #3]
    -> 0x18cae3e14 <+360>: ldr x8, [x8, #0x40]
    0x18cae3e18 <+364>: ldr x9, [x23]
    0x18cae3e1c <+368>: eor x9, x9, x8
    0x18cae3e20 <+372>: cmp x8, #0x0 ; =0x0
    0x18cae3e24 <+376>: csel x8, xzr, x9, eq
    0x18cae3e28 <+380>: ldr x8, [x8, #0x28]
    0x18cae3e2c <+384>: mov x0, x21
    0x18cae3e30 <+388>: mov x1, x20
    0x18cae3e34 <+392>: blr x8
    0x18cae3e38 <+396>: ldr x0, [x20, #0x98]
    0x18cae3e3c <+400>: cbnz x0, 0x18cae3d64 ; <+184>
    0x18cae3e40 <+404>: str xzr, [x20, #0xa0]
    0x18cae3e44 <+408>: orr w0, wzr, #0x1
    0x18cae3e48 <+412>: cbz w22, 0x18cae3e58 ; <+428>
    0x18cae3e4c <+416>: ldr x8, [x19, #0x10]
    0x18cae3e50 <+420>: add w22, w22, #0x1 ; =0x1
    0x18cae3e54 <+424>: cbnz x8, 0x18cae3d78 ; <+204>
    0x18cae3e58 <+428>: ldp x29, x30, [sp, #0x30]
    0x18cae3e5c <+432>: ldp x20, x19, [sp, #0x20]
    0x18cae3e60 <+436>: ldp x22, x21, [sp, #0x10]
    0x18cae3e64 <+440>: ldp x24, x23, [sp], #0x40
    0x18cae3e68 <+444>: ret

  • 重现方式: 不停地切换场景

  • 出现概率:

  • 额外线索:

送你上去

没有人理啊,哎,又换回1.5.2了

I am seeing the same crash in my game, both on iOS (v11.2.5) and on macOS (v10.12.6) in the simulator. It is fairly easy to reproduce with my current game by simply switching scenes somewhat frequently (usually by the 4th or 5th scene change in a minute or so). It would be unusual behavior for a “real” user, but when testing I jumped around scenes and it happens often.

If I understand the comments above correctly this doesn’t happen on earlier versions of cocos creator? I may try going back to a previous version, or even use the C++ export to go back to cocos2d-x.

我也发现低概率的重复加载报错。

1.8.2 IOS 同出现相同的问题