Summary: | Weather tray crashes KDE if DNS is down | ||
---|---|---|---|
Product: | [Plasma] kdeplasma-addons | Reporter: | kwasha.spam+kde |
Component: | Weather | Assignee: | Plasma Bugs List <plasma-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | jesse.r.bassett, nate, nicolas.fella |
Priority: | NOR | Keywords: | drkonqi |
Version: | 5.24.4 | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/plasma/plasma-workspace/commit/7b483096893bc95fb6cf6fd62c3fdece1bbdef9e | Version Fixed In: | 5.24.7, 5.25.5 |
Sentry Crash Report: |
Description
kwasha.spam+kde
2022-08-07 22:49:14 UTC
Can reproduce by turning off Wifi and searching for a location in the widget setup #0 (anonymous namespace)::splitString<QStringList, QString>(QString const&, QChar const*, Qt::SplitBehavior, Qt::CaseSensitivity, int) (source=..., sep=0x7fffffffcb4e, behavior=..., cs=Qt::CaseSensitive, separatorSize=1) at text/qstring.cpp:7814 #1 0x00007ffff53bd7bd in QString::split(QChar, QFlags<Qt::SplitBehaviorFlags>, Qt::CaseSensitivity) const (this=<optimized out>, sep=sep@entry=..., behavior=..., behavior@entry=..., cs=cs@entry=Qt::CaseSensitive) at text/qstring.cpp:7925 #2 0x00007fff61878380 in DWDIon::calculatePositions(QStringList, QVector<int>&, QVector<int>&) (this=this@entry=0x24366e0, lines=..., namePositionalInfo=..., stationIdPositionalInfo=...) at /home/nico/kde/usr/include/QtCore/qchar.h:101 #3 0x00007fff61878b18 in DWDIon::parseStationData(QByteArray) (this=this@entry=0x24366e0, data=...) at /home/nico/kde/src/plasma-workspace/dataengines/weather/ions/dwd/ion_dwd.cpp:371 #4 0x00007fff6187af5b in DWDIon::setup_slotJobFinished(KJob*) (this=0x24366e0, job=<optimized out>) at /home/nico/kde/src/plasma-workspace/dataengines/weather/ions/dwd/ion_dwd.cpp:286 #5 0x00007ffff55383f4 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffffce20, r=0x24366e0, this=0x416f640) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #6 doActivate<false>(QObject*, int, void**) (sender=0x43624b0, signal_index=6, argv=0x7fffffffce20) at kernel/qobject.cpp:3886 #7 0x00007ffff5531b8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x43624b0, m=m@entry=0x7ffff61b1640 <KJob::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7fffffffce20) at kernel/qobject.cpp:3946 #8 0x00007ffff6157675 in KJob::result(KJob*, KJob::QPrivateSignal) (this=this@entry=0x43624b0, _t1=<optimized out>, _t1@entry=0x43624b0, _t2=...) at /home/nico/kde/build/kcoreaddons/src/lib/KF5CoreAddons_autogen/include/moc_kjob.cpp:633 #9 0x00007ffff615886b in KJob::finishJob(bool) (this=0x43624b0, emitResult=<optimized out>) at /home/nico/kde/src/kcoreaddons/src/lib/jobs/kjob.cpp:98 #10 0x00007ffff55383f4 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffffcf30, r=0x43624b0, this=0x41aed70) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #11 doActivate<false>(QObject*, int, void**) (sender=0x1f223a0, signal_index=5, argv=0x7fffffffcf30) at kernel/qobject.cpp:3886 #12 0x00007ffff5531b8f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x1f223a0, m=m@entry=0x7ffff7afbac0 <KIO::SlaveInterface::staticMetaObject>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffffffcf30) at kernel/qobject.cpp:3946 #13 0x00007ffff7a1d486 in KIO::SlaveInterface::error(int, QString const&) (this=this@entry=0x1f223a0, _t1=<optimized out>, _t2=...) at /home/nico/kde/build/kio/src/core/KF5KIOCore_autogen/include/moc_slaveinterface.cpp:452 #14 0x00007ffff7a1f752 in KIO::SlaveInterface::dispatch(int, QByteArray const&) (this=0x1f223a0, _cmd=<optimized out>, rawdata=...) at /home/nico/kde/src/kio/src/core/slaveinterface.cpp:181 #15 0x00007ffff7a1dab8 in KIO::SlaveInterface::dispatch() (this=0x1f223a0) at /home/nico/kde/src/kio/src/core/slaveinterface.cpp:78 #16 0x00007ffff7a227d1 in KIO::Slave::gotInput() (this=0x1f223a0) at /home/nico/kde/src/kio/src/core/slave.cpp:346 #17 0x00007ffff55383f4 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffffd100, r=0x1f223a0, this=0x1e8c230) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398 #18 doActivate<false>(QObject*, int, void**) (sender=0x24c74d0, signal_index=3, argv=0x7fffffffd100) at kernel/qobject.cpp:3886 #19 0x00007ffff552d3e0 in QObject::event(QEvent*) (this=0x24c74d0, e=0x48453e0) at kernel/qobject.cpp:1314 #20 0x00007ffff63ea37e in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=<optimized out>, receiver=0x24c74d0, e=0x48453e0) at kernel/qapplication.cpp:3637 #21 0x00007ffff5503458 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x24c74d0, event=0x48453e0) at kernel/qcoreapplication.cpp:1064 #22 0x00007ffff5506131 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=0x0, event_type=0, data=0x4ca4d0) at kernel/qcoreapplication.cpp:1821 #23 0x00007ffff5557d83 in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x4f7ee0) at kernel/qeventdispatcher_glib.cpp:277 #24 0x00007ffff21c1faf in g_main_dispatch (context=0x7fffdc005010) at ../glib/gmain.c:3417 #25 g_main_context_dispatch (context=0x7fffdc005010) at ../glib/gmain.c:4135 #26 0x00007ffff22172c8 in g_main_context_iterate.constprop.0 (context=context@entry=0x7fffdc005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/gmain.c:4211 #27 0x00007ffff21bf940 in g_main_context_iteration (context=0x7fffdc005010, may_block=1) at ../glib/gmain.c:4276 #28 0x00007ffff55574a6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x4fd030, flags=...) at kernel/qeventdispatcher_glib.cpp:423 #29 0x00007ffff550203b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7fffffffd540, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69 #30 0x00007ffff5509b42 in QCoreApplication::exec() () at ../../include/QtCore/../../src/corelib/global/qflags.h:121 #31 0x00007ffff5916a0c in QGuiApplication::exec() () at kernel/qguiapplication.cpp:1867 #32 0x00007ffff63ea2f5 in QApplication::exec() () at kernel/qapplication.cpp:2829 #33 0x0000000000422bb8 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/nico/kde/src/plasma-workspace/shell/main.cpp:244 A possibly relevant merge request was started @ https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1999 Git commit 01a92d4e81f04044621ac6d4d0e9464b6fc93ff9 by Nicolas Fella. Committed on 08/08/2022 at 19:27. Pushed by nicolasfella into branch 'master'. [dataengines/weather/dwd] Properly detect empty reply The reply may be non-null but empty, which leads to a crash later M +3 -3 dataengines/weather/ions/dwd/ion_dwd.cpp https://invent.kde.org/plasma/plasma-workspace/commit/01a92d4e81f04044621ac6d4d0e9464b6fc93ff9 Git commit fae8cbac976c933e481991e7c77b4e6f54a2eefa by Nicolas Fella. Committed on 08/08/2022 at 19:36. Pushed by nicolasfella into branch 'Plasma/5.25'. [dataengines/weather/dwd] Properly detect empty reply The reply may be non-null but empty, which leads to a crash later (cherry picked from commit 01a92d4e81f04044621ac6d4d0e9464b6fc93ff9) M +3 -3 dataengines/weather/ions/dwd/ion_dwd.cpp https://invent.kde.org/plasma/plasma-workspace/commit/fae8cbac976c933e481991e7c77b4e6f54a2eefa Git commit 7b483096893bc95fb6cf6fd62c3fdece1bbdef9e by Nicolas Fella. Committed on 08/08/2022 at 19:39. Pushed by nicolasfella into branch 'Plasma/5.24'. [dataengines/weather/dwd] Properly detect empty reply The reply may be non-null but empty, which leads to a crash later (cherry picked from commit 01a92d4e81f04044621ac6d4d0e9464b6fc93ff9) M +3 -3 dataengines/weather/ions/dwd/ion_dwd.cpp https://invent.kde.org/plasma/plasma-workspace/commit/7b483096893bc95fb6cf6fd62c3fdece1bbdef9e *** Bug 458967 has been marked as a duplicate of this bug. *** |