Bug 392842 - Modifying layer properties causes crash
Summary: Modifying layer properties causes crash
Status: RESOLVED WORKSFORME
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Dmitry Kazakov
URL:
Keywords: drkonqi, triaged
Depends on:
Blocks:
 
Reported: 2018-04-07 19:55 UTC by Pablo Selín Carrasco Armijo
Modified: 2018-10-29 02:02 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Pablo Selín Carrasco Armijo 2018-04-07 19:55:13 UTC
Application: krita (4.0.0 (git 0ba5865))

Qt Version: 5.10.0
Frameworks Version: 5.44.0
Operating System: Linux 4.13.0-38-generic x86_64
Distribution: KDE neon User Edition 5.12

-- Information about the crash:
- What I was doing when the application crashed:

I was changing the properties of a paint layer between multiply and other value and the application crashed.

-- Backtrace:
Application: Krita (krita), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ff339241900 (LWP 14797))]

Thread 7 (Thread 0x7ff2c68ce700 (LWP 16373)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007ff3364c35b6 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007ff3364bedfa in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ff32f93e6ba in start_thread (arg=0x7ff2c68ce700) at pthread_create.c:333
#5  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7ff2e989a700 (LWP 16372)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007ff3364c35b6 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007ff3364bedfa in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ff32f93e6ba in start_thread (arg=0x7ff2e989a700) at pthread_create.c:333
#5  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7ff2f1a77700 (LWP 14803)):
#0  0x00007ff335bad74d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ff32e0d638c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ff32e0d649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ff3366f65cb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ff33669d64a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ff3364bd554 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007ff31c64aa35 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Qml.so.5
#7  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007ff32f93e6ba in start_thread (arg=0x7ff2f1a77700) at pthread_create.c:333
#9  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7ff2f8d1a700 (LWP 14802)):
#0  0x00007ff335b7e30d in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ff3366f5f2d in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007ff3364c1a78 in QThread::msleep(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ff333a5f2fa in KisTileDataSwapper::run (this=0x7ff333f5cf80 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>) at /home/pablo/krita/src/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:97
#4  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ff32f93e6ba in start_thread (arg=0x7ff2f8d1a700) at pthread_create.c:333
#6  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7ff2f951b700 (LWP 14801)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ff3364c367b in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#2  0x00007ff3364bbfbb in QSemaphore::acquire(int) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#3  0x00007ff333a44b8e in KisTileDataPooler::waitForWork (this=0x7ff333f5cf40 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/pablo/krita/src/libs/image/tiles3/kis_tile_data_pooler.cc:165
#4  0x00007ff333a4544a in KisTileDataPooler::run (this=0x7ff333f5cf40 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>) at /home/pablo/krita/src/libs/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007ff32f93e6ba in start_thread (arg=0x7ff2f951b700) at pthread_create.c:333
#7  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7ff3117bb700 (LWP 14800)):
#0  0x00007ff335bad74d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ff32e0d638c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ff32e0d649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ff3366f65cb in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#4  0x00007ff33669d64a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#5  0x00007ff3364bd554 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#6  0x00007ff32fb6a2c5 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5DBus.so.5
#7  0x00007ff3364c26eb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#8  0x00007ff32f93e6ba in start_thread (arg=0x7ff3117bb700) at pthread_create.c:333
#9  0x00007ff335bb941d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ff339241900 (LWP 14797)):
[KCrash Handler]
#6  KisSharedPtr<KisDefaultBoundsBase>::operator-> (this=0x50) at /home/pablo/krita/src/libs/global/kis_shared_ptr.h:181
#7  KisPaintDevice::Private::currentStrategy (this=0x30) at /home/pablo/krita/src/libs/image/kis_paint_device.cc:589
#8  0x00007ff333baa79d in KisPaintDevice::extent (this=this@entry=0x13696870) at /home/pablo/krita/src/libs/image/kis_paint_device.cc:1174
#9  0x00007ff333bb172b in KisPaintDevice::createThumbnailDeviceOversampled (this=0x13696870, w=20, h=16, oversample=1, rect=..., outputTileRect=...) at /home/pablo/krita/src/libs/image/kis_paint_device.cc:1660
#10 0x00007ff333bb1be3 in KisPaintDevice::createThumbnail (this=<optimized out>, w=w@entry=20, h=h@entry=16, rect=..., oversample=oversample@entry=1, renderingIntent=KoColorConversionTransformation::IntentPerceptual, conversionFlags=...) at /home/pablo/krita/src/libs/image/kis_paint_device.cc:1701
#11 0x00007ff333bb1f1c in KisPaintDeviceCache::createThumbnail (conversionFlags=..., renderingIntent=KoColorConversionTransformation::IntentPerceptual, oversample=1, h=16, w=20, this=0x7ff2a52aaef8) at /home/pablo/krita/src/libs/image/kis_paint_device_cache.h:104
#12 KisPaintDevice::createThumbnail (this=<optimized out>, w=w@entry=20, h=h@entry=16, oversample=oversample@entry=1, renderingIntent=renderingIntent@entry=KoColorConversionTransformation::IntentPerceptual, conversionFlags=..., conversionFlags@entry=...) at /home/pablo/krita/src/libs/image/kis_paint_device.cc:1710
#13 0x00007ff333b76d78 in KisLayer::createThumbnail (this=<optimized out>, w=20, h=16) at /home/pablo/krita/src/libs/image/kis_layer.cc:851
#14 0x00007ff3388ffe5f in KisNodeModel::data (this=0xc1dafb0, index=..., role=120) at /home/pablo/krita/src/libs/ui/kis_node_model.cpp:490
#15 0x00007ff336662a19 in QSortFilterProxyModel::data(QModelIndex const&, int) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#16 0x00007ff338b131c8 in QModelIndex::data (arole=120, this=0x7ffca811e7b0) at /usr/include/x86_64-linux-gnu/qt5/QtCore/qabstractitemmodel.h:432
#17 KisNodeDelegate::drawThumbnail (this=this@entry=0xc1a0d60, p=p@entry=0x7ffca811eb20, option=..., index=...) at /home/pablo/krita/src/libs/ui/KisNodeDelegate.cpp:274
#18 0x00007ff338b18a01 in KisNodeDelegate::paint (this=0xc1a0d60, p=0x7ffca811eb20, o=..., index=...) at /home/pablo/krita/src/libs/ui/KisNodeDelegate.cpp:112
#19 0x00007ff337693df2 in QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#20 0x00007ff337699447 in QTreeView::drawTree(QPainter*, QRegion const&) const () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007ff33769dd96 in QTreeView::paintEvent(QPaintEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007ff338b1cd20 in KisNodeView::paintEvent (this=0xc195010, event=<optimized out>) at /home/pablo/krita/src/libs/ui/KisNodeView.cpp:446
#23 0x00007ff33741ef88 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007ff3374c495e in QFrame::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007ff337635703 in QAbstractItemView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007ff33769ec2c in QTreeView::viewportEvent(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007ff338b1bb1b in KisNodeView::viewportEvent (this=0xc195010, e=0x7ffca811f3b0) at /home/pablo/krita/src/libs/ui/KisNodeView.cpp:290
#28 0x00007ff33669f132 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007ff3373dfaa5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#30 0x00007ff3373e7417 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#31 0x00007ff338affe77 in KisApplication::notify (this=<optimized out>, receiver=0xc191270, event=0x7ffca811f3b0) at /home/pablo/krita/src/libs/ui/KisApplication.cpp:620
#32 0x00007ff33669f3c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#33 0x00007ff337417a1a in QWidgetPrivate::sendPaintEvent(QRegion const&) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#34 0x00007ff337418122 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#35 0x00007ff337418eac in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#36 0x00007ff337418d99 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#37 0x00007ff337418d99 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#38 0x00007ff337418d99 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#39 0x00007ff337417bd1 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#40 0x00007ff337418eac in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#41 0x00007ff337417bd1 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#42 0x00007ff337418eac in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#43 0x00007ff337417bd1 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#44 0x00007ff337418eac in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#45 0x00007ff337417bd1 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#46 0x00007ff3373ef8cb in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#47 0x00007ff3373efaa8 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#48 0x00007ff337406d9f in QWidgetPrivate::syncBackingStore() () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#49 0x00007ff33741f198 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#50 0x00007ff337534d89 in QMainWindow::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#51 0x00007ff3380305c7 in KMainWindow::event (this=this@entry=0xa184c80, ev=ev@entry=0x171e98b0) at /home/pablo/krita/src/libs/widgetutils/xmlgui/kmainwindow.cpp:780
#52 0x00007ff338068669 in KXmlGuiWindow::event (this=0xa184c80, ev=0x171e98b0) at /home/pablo/krita/src/libs/widgetutils/xmlgui/kxmlguiwindow.cpp:125
#53 0x00007ff3373dfacc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#54 0x00007ff3373e7417 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#55 0x00007ff338affe77 in KisApplication::notify (this=<optimized out>, receiver=0xa184c80, event=0x171e98b0) at /home/pablo/krita/src/libs/ui/KisApplication.cpp:620
#56 0x00007ff33669f3c8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#57 0x00007ff3366a1fcb in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#58 0x00007ff3366f6fa3 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#59 0x00007ff32e0d6197 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#60 0x00007ff32e0d63f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#61 0x00007ff32e0d649c in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#62 0x00007ff3366f65af in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#63 0x00007ff321b5e1a1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#64 0x00007ff33669d64a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#65 0x00007ff3366a6854 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#66 0x000000000040505f in main (argc=1, argv=<optimized out>) at /home/pablo/krita/src/krita/main.cc:361

The reporter indicates this bug may be a duplicate of or related to bug 383858.

Possible duplicates by query: bug 383858.

Reported using DrKonqi
Comment 1 Antti Savolainen 2018-04-07 20:07:21 UTC
Any chance of you getting a video of it? If you can reproduce it that is.
Comment 2 Pablo Selín Carrasco Armijo 2018-04-07 20:28:35 UTC
Hmm, It's pretty random I think, but it happened twice to me today, if I find the pattern of the crash I'll record a video... but I just tried to reproduce it and couldn't make it happen...
Comment 3 Dmitry Kazakov 2018-04-09 08:16:37 UTC
I think I know what can be the reason of this bug...
Comment 4 Dmitry Kazakov 2018-04-09 08:21:08 UTC
Hm, bug 383858 looks related, but the fix for it will probably be different...
Comment 5 Dmitry Kazakov 2018-04-09 08:51:00 UTC
Hi, Pablo!

Could you tell me please, did you have any animated layers in this image that caused a crash?
Comment 6 Dmitry Kazakov 2018-04-09 10:03:07 UTC
Well, looking at the code, I can see only one way how the crash can happen, but it needs quite a lot of coincidences happen at once...

Case a) 

1) Undo Limit should have be set to 0
2) Some animation frames should have been removed before the last action
3) Removal of animation frames should not complete before layer properties change

Case b) [Krita 4.0.0 and earlier only]
1) Some animation frame(s) were added
2) Undo was requested for them
3) Before undo was completed, layer properties were changed. In Krita 4.0.0 changing visibility of the layer causes resetting redo information that could cause such thing. But it is highly improbably.

I tried both cases, but couldn't reproduce the problem :(
Comment 7 Pablo Selín Carrasco Armijo 2018-04-09 10:05:40 UTC
(In reply to Dmitry Kazakov from comment #5)
> Hi, Pablo!
> 
> Could you tell me please, did you have any animated layers in this image
> that caused a crash?

No, I was working only with paint layers...
Comment 8 Dmitry Kazakov 2018-04-09 10:46:01 UTC
Weird, I cannot reproduce the crash in any possible way I tried :(

The most possible sequence of a crash is:

1) #12 KisPaintDevice::createThumbnail() asks current KisPaintDeviceData object for a cache object and requests this cache object to get a thumbnail for it.

2) In the meantime some other code in some other thread deletes this KisPaintDeviceData object, and therefore the cache object as well

3) #11 KisPaintDeviceCache::createThumbnail() doesn't know it has just been deleted and continues to generate a thumbnail, requesting an already invalid m_paintDevice pointer, which finally causes a crash.


The problem is that I cannot see any way, how point 2) can happen. Neither m_data, not m_lodData are ever deleted throughout the lifetime of a paint device. Only frames are deleted, but Pablo says he didn't use animation that time...
Comment 9 Dmitry Kazakov 2018-04-09 10:47:27 UTC
Pablo, could you check if the crash only when View->Instant Preview option on or option value doesn't matter?
Comment 10 Halla Rempt 2018-05-12 09:28:11 UTC
Setting to needinfo, since info is needed.
Comment 11 Andrew Crouthamel 2018-09-28 03:34:59 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 12 Andrew Crouthamel 2018-10-29 02:02:28 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!