cocos2dx fatal signal11(SIGSEGV) at 0x00000000(code=1)的解决实践
产品基于cocos2dx开发的棋牌游戏。
出现的问题:如果app游戏时正好网络处于开启状态,则运行正常。反之,则在android logcat输出signal11(SIGSEGV) at 0x00000000(code=1)
12-06 14:59:22.482: I/dalvikvm(8782): dvmDdmHandleHpsgChunk(when 0, what 0, heap 0)12-06 14:59:23.376: I/dalvikvm(8782): Debugger is active12-06 14:59:44.266: D/Cocos2dxActivity(8782): model=HUAWEI U9510E12-06 14:59:44.266: D/Cocos2dxActivity(8782): product=U9510E12-06 14:59:44.266: D/Cocos2dxActivity(8782): isEmulator=false12-06 14:59:45.873: W/System.err(8782): /data/system/carrierinfo.prop: open failed: ENOENT (No such file or directory)12-06 14:59:45.879: W/System.err(8782): java.net.UnknownHostException: Unable to resolve host "feedback.umeng.com": No address associated with hostname12-06 14:59:45.886: W/System.err(8782): at java.net.InetAddress.lookupHostByName(InetAddress.java:426)12-06 14:59:45.889: W/System.err(8782): at java.net.InetAddress.getAllByNameImpl(InetAddress.java:242)12-06 14:59:45.893: W/System.err(8782): at java.net.InetAddress.getAllByName(InetAddress.java:220)12-06 14:59:45.899: W/System.err(8782): at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:137)12-06 14:59:45.903: W/System.err(8782): at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:164)12-06 14:59:45.903: W/System.err(8782): at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:119)12-06 14:59:45.913: W/System.err(8782): at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:360)12-06 14:59:45.916: W/System.err(8782): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:555)12-06 14:59:45.923: W/System.err(8782): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:487)12-06 14:59:45.929: W/System.err(8782): at org.apache.http.impl.client.AbstractHttpClient.execute(AbstractHttpClient.java:465)12-06 14:59:45.939: W/System.err(8782): at com.umeng.fb.a.b.a(FbClient.java:189)12-06 14:59:45.943: W/System.err(8782): at com.umeng.fb.model.Conversation$1.run(Conversation.java:219)/data/system/carrierinfo.prop: open failed: ENOENT (No such file or directory)12-06 14:59:45.946: W/System.err(8782): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)12-06 14:59:45.946: W/System.err(8782): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)12-06 14:59:45.946: W/System.err(8782): at java.lang.Thread.run(Thread.java:856)12-06 14:59:45.949: W/System.err(8782): Caused by: libcore.io.GaiException: getaddrinfo failed: EAI_NODATA (No address associated with hostname)12-06 14:59:45.966: W/System.err(8782): at libcore.io.Posix.getaddrinfo(Native Method)12-06 14:59:45.966: W/System.err(8782): at libcore.io.ForwardingOs.getaddrinfo(ForwardingOs.java:56)12-06 14:59:45.969: W/System.err(8782): at java.net.InetAddress.lookupHostByName(InetAddress.java:411)12-06 14:59:45.969: W/System.err(8782): ... 14 more12-06 14:59:45.976: W/System.err(8782): /data/system/carrierinfo.prop: open failed: ENOENT (No such file or directory)12-06 14:59:47.446: A/libc(8782): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1)
********** Crash dump: **********Build fingerprint: 'Huawei/U9510E/hwu9510e:4.0.4/HuaweiU9510E/CHNC00B122:user/ota-rel-keys,release-keys'pid: 27322, tid: 27322 >>> com.nbgame.doudizhu <<<signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 00000000Stack frame #00 pc 003b8158 /data/data/com.nbgame.doudizhu/lib/libgame.so (_ZN12GameProtocal19createServerMessageEi): Routine createServerMessage in /Users/chenxu/work/c++/cocos2d-x-2.1.4/work/doudizhu/proj.android/../../../baisonext/NetWork/GameProtocal.cpp:46Stack frame #01 pc 003b7dcc /data/data/com.nbgame.doudizhu/lib/libgame.so (_ZN7Network20dispatchNetworkErrorEi): Routine dispatchNetworkError in /Users/chenxu/work/c++/cocos2d-x-2.1.4/work/doudizhu/proj.android/../../../baisonext/NetWork/Network.cpp:319