About SIGSEGV Raised By Unity -- mono_object_new crash

Hi, i’m using Unity 5.3.4f1 together with a native crash catcher for Android platform. One of the most common native crashes reported is as follows:

Backtrace <<<
#00 pc 001f59e4 /data/data/com.app.test/lib/libmono.so (mono_object_new_specific+48)
#01 pc 001f59a0 /data/data/com.app.test/lib/libmono.so (mono_object_new+60)
#02 pc 00234c0c /data/data/com.app.test/lib/libmono.so (mono_thread_attach+156)
#03 pc 00357274 /data/data/com.app.test/lib/libunity.so
#04 pc 007d7d80 /data/data/com.app.test/lib/libunity.so
#05 pc 00101701 /data/data/com.app.test/com.app.test.dex

Can anyone give some hint about it? Thanks a lot!

No, we can’t really help you here. SIGSEGV is a segmentation fault. As we can see from the stacktrace it happened during an object creation. A possible problem is that it was attempted to create a very large object that doesn’t fit into memory. In addition some safety checks are missing which should have caught that problem.

In general your application has tried to access a protected memory region. There are countless causes for this.

Thanks for your comments, Bunny83. We will try to get C# callstack when such mono exception rasies if possible.

Recently, another crash occurs:

Backtrace <<<
#00 pc 00042538 /system/lib/libc.so (tgkill+12)
#01 pc 00040139 /system/lib/libc.so (pthread_kill+32)
#02 pc 0001c783 /system/lib/libc.so (raise+10)
#03 pc 000199f1 /system/lib/libc.so (__libc_android_abort+34)
#04 pc 000175ac /system/lib/libc.so (abort+4)
#05 pc 00313c85 /system/lib/libart.so (art::Runtime::Abort()+212)
#06 pc 000e5d5d /system/lib/libart.so (art::LogMessage::~LogMessage()+2212)
#07 pc 000e2493 /system/lib/libart.so (art::Barrier::~Barrier()+182)
#08 pc 0033a40d /system/lib/libart.so (art::ThreadList::Dump(std::__1::basic_ostream >&)+172)
#09 pc 00313d4b /system/lib/libart.so (art::Runtime::Abort()+410)
#10 pc 000e5d5d /system/lib/libart.so (art::LogMessage::~LogMessage()+2212)
#11 pc 001c6cfb /system/lib/libart.so (art::IndirectReferenceTable::AbortIfNoCheckJNI()+62)
#12 pc 00330793 /system/lib/libart.so (art::thread::DecodeJObject(_jobject*) const+814)
#13 pc 0030c2bb /system/lib/libart.so (art::InvokeWithJValues(art::ScopedObjectAccessAlreadyRunnable const&, _jobject*, _jmethodID*, jvalue*)+378)
#14 pc 00258779 /system/lib/libart.so (art::JNI::CallStaticObjectMethodA(_JNIEnv*, _jclass*, _jmethodID*, jvalue*)+324)
#15 pc 007dc0ac /data/app/com.app.test/lib/arm/libunity.so
#16 pc 0000ede4