Details
-
Bug
-
Resolution: Done
-
P1: Critical
-
5.15.1
-
None
-
-
d5eda37baaea20b2411b6ef1ca0d41a2a71a06a6 (qt/qtbase/dev) 198a985c094232dce0a7a956004dd2ae1fec68f5 (qt/qtbase/6.0) d70fe37b8142e7ee69d695a1e2611a55a785db2f (qt/tqtc-qtbase/tqtc/lts-5.15)
Description
Beginning with Qt 5.15.1 I've started to notice in my Google Play Console a lot of crashes related to QTimeZone::systemTimeZone
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** pid: 0, tid: 0 >>> com.gsoftteam.pyramidsolitaire <<< backtrace: #00 pc 000000000005fcb2 /apex/com.android.runtime/lib/bionic/libc.so (abort+166) #00 pc 000000000037ae4f /apex/com.android.runtime/lib/libart.so (art::Runtime::Abort(char const*)+1770) #00 pc 000000000000859b /system/lib/libbase.so (android::base::LogMessage::~LogMessage()+418) #00 pc 00000000003b046b /apex/com.android.runtime/lib/libart.so (art::Thread::AssertNoPendingException() const+818) #00 pc 00000000000f7eb7 /apex/com.android.runtime/lib/libart.so (art::ClassLinker::FindClass(art::Thread*, char const*, art::Handle<art::mirror::ClassLoader>)+30) #00 pc 00000000000e9f8b /apex/com.android.runtime/lib/libart.so (art::ClassLinker::DoResolveType(art::dex::TypeIndex, art::Handle<art::mirror::DexCache>, art::Handle<art::mirror::ClassLoader>)+122) #00 pc 00000000003ce5f9 /apex/com.android.runtime/lib/libart.so (_ZN3art8verifier4impl12_GLOBAL__N_114MethodVerifierILb0EE6VerifyEv$09bf97eb2c0d684adb6d215f7005036e+1164) #00 pc 00000000003d134f /apex/com.android.runtime/lib/libart.so (art::verifier::MethodVerifier::FindLocksAtDexPc(art::ArtMethod*, unsigned int, std::__1::vector<art::verifier::MethodVerifier::DexLockInfo, std::__1::allocator<art::verifier::MethodVerifier::DexLockInfo>>*, unsigned int)+470) #00 pc 00000000002fd097 /apex/com.android.runtime/lib/libart.so (art::Monitor::VisitLocks(art::StackVisitor*, void (*)(art::ObjPtr<art::mirror::Object>, void*), void*, bool)+294) #00 pc 00000000002fdc81 /apex/com.android.runtime/lib/libart.so (art::MonitorObjectsStackVisitor::VisitFrame()+96) #00 pc 00000000003948fb /apex/com.android.runtime/lib/libart.so (void art::StackVisitor::WalkStack<(art::StackVisitor::CountTransitions)0>(bool)+406) #00 pc 00000000003af635 /apex/com.android.runtime/lib/libart.so (art::Thread::DumpJavaStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, bool) const+348) #00 pc 00000000003ac2cb /apex/com.android.runtime/lib/libart.so (art::Thread::DumpStack(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+374) #00 pc 00000000003a8a83 /apex/com.android.runtime/lib/libart.so (art::Thread::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool, BacktraceMap*, bool) const+34) #00 pc 00000000003c11f5 /apex/com.android.runtime/lib/libart.so (art::DumpCheckpoint::Run(art::Thread*)+600) #00 pc 00000000003bbe05 /apex/com.android.runtime/lib/libart.so (art::ThreadList::RunCheckpoint(art::Closure*, art::Closure*)+380) #00 pc 00000000003bb4e1 /apex/com.android.runtime/lib/libart.so (art::ThreadList::Dump(std::__1::basic_ostream<char, std::__1::char_traits<char>>&, bool)+1412) #00 pc 000000000037ab9b /apex/com.android.runtime/lib/libart.so (art::Runtime::Abort(char const*)+1078) #00 pc 000000000000859b /system/lib/libbase.so (android::base::LogMessage::~LogMessage()+418) #00 pc 0000000000288cff /apex/com.android.runtime/lib/libart.so (art::JavaVMExt::JniAbort(char const*, char const*)+1206) #00 pc 0000000000296cfd /apex/com.android.runtime/lib/libart.so (art::JNI::GetMethodID(_JNIEnv*, _jclass*, char const*, char const*)+1184) #00 pc 0000000000199309 /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so #00 pc 0000000000198f4b /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so #00 pc 000000000019ac29 /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so (QJNIObjectPrivate::callObjectMethodV(char const*, char const*, std::__va_list) const+52) #00 pc 000000000019acab /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so (QJNIObjectPrivate::callObjectMethod(char const*, char const*, ...) const+22) #00 pc 000000000019acc9 /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so (QJNIObjectPrivate QJNIObjectPrivate::callObjectMethod<_jstring*>(char const*) const+8) #00 pc 00000000001070eb /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so #00 pc 000000000010333f /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so (QTimeZone::systemTimeZoneId()+26) #00 pc 00000000001033d3 /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Core_armeabi-v7a.so (QTimeZone::systemTimeZone()+26) #00 pc 00000000000cbb25 /data/app/com.gsoftteam.pyramidsolitaire-34Jd9Mp8_KtXyaAi0T082Q==/lib/arm/libQt5Qml_armeabi-v7a.so
At first I thought this was a result of making repeated calls to (new Date()).getTime() in QML once every 20 milliseconds and it should have been easy to replicate it. Unfortunately I haven't been able to replicate the issue so far.
Wild guess: It might have something to do with QTBUG-75585 ...