download dialog grid unit related qml crashes
There is a weird segfault that could happen during download dialog rendering if a GRID_UNIT_PX=30 is defined in /etc/ubuntu-touch-session.d/<device>.conf
It also happens when one double taps the address bar, so likely #312 related given that's a grid unit issue as well
Thread 1 "morph-browser" received signal SIGSEGV, Segmentation fault.
QNetworkReply::attribute (this=0x0, code=code@entry=QNetworkRequest::RedirectionTargetAttribute) at access/qnetworkreply.cpp:687
687 access/qnetworkreply.cpp: No such file or directory.
(gdb) bt
#0 QNetworkReply::attribute (this=0x0, code=code@entry=QNetworkRequest::RedirectionTargetAttribute) at access/qnetworkreply.cpp:687
#1 0x0000007f8143a608 in QQuickBorderImage::sciRequestFinished (this=this@entry=0x24ae24a0) at items/qquickborderimage.cpp:550
#2 0x0000007f8143a870 in QQuickBorderImage::qt_static_metacall (_o=_o@entry=0x24ae24a0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=5, _a=_a@entry=0x7ff4c5b430)
at .moc/moc_qquickborderimage_p.cpp:129
#3 0x0000007f8143b768 in QQuickBorderImage::qt_metacall (this=0x24ae24a0, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0x7ff4c5b430) at .moc/moc_qquickborderimage_p.cpp:213
#4 0x0000007f80ffab18 in QQmlProxyMetaObject::metaCall (this=0x24ae2750, o=0x24ae24a0, c=QMetaObject::InvokeMetaMethod, id=61, a=0x7ff4c5b430)
at qml/qqmlproxymetaobject.cpp:121
#5 0x0000007f79077ef4 in QMetaObject::activate (sender=0x23f25710, sender@entry=0x24b16c80, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1,
argv=argv@entry=0x0) at kernel/qobject.cpp:3822
#6 0x0000007f79078434 in QMetaObject::activate (sender=sender@entry=0x24b16c80, m=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0)
at kernel/qobject.cpp:3657
#7 0x0000007f80d41b6c in QNetworkReply::finished (this=this@entry=0x24b16c80) at .moc/moc_qnetworkreply.cpp:384
#8 0x0000007f80c484a4 in QNetworkReplyImplPrivate::finished (this=this@entry=0x24b20f50) at access/qnetworkreplyimpl.cpp:843
#9 0x0000007f80c49b64 in QNetworkReplyImplPrivate::_q_startOperation (this=0x24b20f50) at access/qnetworkreplyimpl.cpp:87
#10 0x0000007f80c4a130 in QNetworkReplyImpl::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
at .moc/moc_qnetworkreplyimpl_p.cpp:106
#11 0x0000007f79078ce8 in QObject::event (this=0x24b16c80, e=<optimized out>) at kernel/qobject.cpp:1261
#12 0x0000007f80792374 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/aarch64-linux-gnu/libQt5Widgets.so.5
#13 0x0000007f807999d0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/aarch64-linux-gnu/libQt5Widgets.so.5
#14 0x0000007f79048494 in QCoreApplication::notifyInternal2 (receiver=0x23f25a30, event=0x23f25760) at kernel/qcoreapplication.cpp:1088
#15 0x0000007f790486cc in QCoreApplication::sendEvent (receiver=<optimized out>, event=event@entry=0x24b1dbf0) at kernel/qcoreapplication.cpp:1476
#16 0x0000007f7904b1bc in QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x23f256e0)
at kernel/qcoreapplication.cpp:1825
#17 0x0000007f7904b684 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1679
#18 0x0000007f790a7550 in postEventSourceDispatch (s=0x23f2a840) at kernel/qeventdispatcher_glib.cpp:276
#19 0x0000007f778cc29c in g_main_context_dispatch () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#20 0x0000007f778cc4f0 in ?? () from /lib/aarch64-linux-gnu/libglib-2.0.so.0
#21 0x0000000000000001 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
It seems that some resources cannot be resolved with grid unit 30? Setting grid unit to 31 instead seems to be a working workaround, leaving this ticket here for those have more in depth knowledge or have more interest in qt internals
Ports with this work-around:
- ubports/porting/community-ports/android10/samsung-galaxy-s10/samsung-exynos9820@d8df3606 (not sure if it is for download dialog specifically)
- ubports/porting/community-ports/android11/samsung-galaxy-s7/samsung-exynos8890@a387f8df
Edited by Katharine Chui