Bug 348162 - Krita crashes when I load the same view in a new window
Summary: Krita crashes when I load the same view in a new window
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: 2.9.4
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-05-23 20:05 UTC by Bastian Lembke
Modified: 2015-06-04 14:50 UTC (History)
1 user (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 Bastian Lembke 2015-05-23 20:05:23 UTC
Application: krita (2.9.4)
KDE Platform Version: 4.14.7
Qt Version: 4.8.6
Operating System: Linux 3.19.0-18-generic x86_64
Distribution: Ubuntu 15.04

-- Information about the crash:
I use a second Monitor for reference images and as "Overview" when I draw details and zoom in. I create a "new window", from the "Window" Menu and move it to the second Monitor. Then I add my actual Image with "new view". Since I use 2.9.4... In 3 of 5 Scenarios Krita crashes now when I do it. I would use Subwindows for this task but I think you can't drop them out of Krita itself. Hope this helps

Using Ubuntu Gnome 15.04

The crash can be reproduced sometimes.

-- 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 0x7f96025ae7c0 (LWP 31168))]

Thread 9 (Thread 0x7f95e4432700 (LWP 31169)):
#0  0x00007f95ff89a49d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f95f6095f45 in ?? () from /usr/lib/nvidia-346/tls/libnvidia-tls.so.346.59
#2  0x00007f95f98bb2f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f95f987796c in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f95f9877e60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f95f9878242 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f95ecb56ae6 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7  0x00007f95f989e955 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8  0x00007f95f9d5d6aa in start_thread (arg=0x7f95e4432700) at pthread_create.c:333
#9  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 8 (Thread 0x7f95e37f1700 (LWP 31170)):
#0  0x00007f95f98bc7a4 in g_mutex_unlock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f95f9877490 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f95f9877de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f95f9877fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f95f9878009 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f95f989e955 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f95f9d5d6aa in start_thread (arg=0x7f95e37f1700) at pthread_create.c:333
#7  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 7 (Thread 0x7f95c1980700 (LWP 31180)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f960010ec56 in wait (time=18446744073709551615, this=0x23c5800) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x23c57b0, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f960010aa7b in QSemaphore::acquire (this=this@entry=0x23c54e0, n=n@entry=1) at thread/qsemaphore.cpp:144
#4  0x00007f95fe77c3de in waitForWork (this=0x23c54d0) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/image/tiles3/kis_tile_data_pooler.cc:162
#5  KisTileDataPooler::run (this=0x23c54d0) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/image/tiles3/kis_tile_data_pooler.cc:184
#6  0x00007f960010e6ff in QThreadPrivate::start (arg=0x23c54d0) at thread/qthread_unix.cpp:349
#7  0x00007f95f9d5d6aa in start_thread (arg=0x7f95c1980700) at pthread_create.c:333
#8  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7f95e2ff0700 (LWP 31181)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f960010ec56 in wait (time=18446744073709551615, this=0x23c5bb0) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=mutex@entry=0x23c5b60, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f960010aeb3 in QSemaphore::tryAcquire (this=0x23c5870, n=n@entry=1, timeout=timeout@entry=-1) at thread/qsemaphore.cpp:221
#4  0x00007f95fe7a6c33 in KisTileDataSwapper::waitForWork (this=this@entry=0x23c5508) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#5  0x00007f95fe7a6e9a in KisTileDataSwapper::run (this=0x23c5508) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#6  0x00007f960010e6ff in QThreadPrivate::start (arg=0x23c5508) at thread/qthread_unix.cpp:349
#7  0x00007f95f9d5d6aa in start_thread (arg=0x7f95e2ff0700) at pthread_create.c:333
#8  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7f95b23fb700 (LWP 31186)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f960010ec56 in wait (time=18446744073709551615, this=0x2a55a10) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x2a55578, mutex=mutex@entry=0x2a55570, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f96011388dd in QFileInfoGatherer::run (this=0x2a55560) at dialogs/qfileinfogatherer.cpp:214
#4  0x00007f960010e6ff in QThreadPrivate::start (arg=0x2a55560) at thread/qthread_unix.cpp:349
#5  0x00007f95f9d5d6aa in start_thread (arg=0x7f95b23fb700) at pthread_create.c:333
#6  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7f95b19ec700 (LWP 31187)):
#0  0x00007f95f9877404 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f95f9877de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f95f9877fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f960024882e in QEventDispatcherGlib::processEvents (this=0x7f95a00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#4  0x00007f9600217cd1 in QEventLoop::processEvents (this=this@entry=0x7f95b19ebdc0, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f9600218035 in QEventLoop::exec (this=this@entry=0x7f95b19ebdc0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f960010be89 in QThread::exec (this=this@entry=0x2a55b10) at thread/qthread.cpp:538
#7  0x00007f96001f8443 in QInotifyFileSystemWatcherEngine::run (this=0x2a55b10) at io/qfilesystemwatcher_inotify.cpp:265
#8  0x00007f960010e6ff in QThreadPrivate::start (arg=0x2a55b10) at thread/qthread_unix.cpp:349
#9  0x00007f95f9d5d6aa in start_thread (arg=0x7f95b19ec700) at pthread_create.c:333
#10 0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7f95b3fff700 (LWP 31197)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f960010ec56 in wait (time=18446744073709551615, this=0x934f490) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=this@entry=0x934eff8, mutex=mutex@entry=0x934eff0, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f96011388dd in QFileInfoGatherer::run (this=0x934efe0) at dialogs/qfileinfogatherer.cpp:214
#4  0x00007f960010e6ff in QThreadPrivate::start (arg=0x934efe0) at thread/qthread_unix.cpp:349
#5  0x00007f95f9d5d6aa in start_thread (arg=0x7f95b3fff700) at pthread_create.c:333
#6  0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7f9599944700 (LWP 31198)):
#0  0x00007f95ff89a49d in read () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f95f6095f45 in ?? () from /usr/lib/nvidia-346/tls/libnvidia-tls.so.346.59
#2  0x00007f95f98bb2f0 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f95f987796c in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007f95f9877e60 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f95f9877fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#6  0x00007f960024882e in QEventDispatcherGlib::processEvents (this=0x7f959010bb70, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#7  0x00007f9600217cd1 in QEventLoop::processEvents (this=this@entry=0x7f9599943dc0, flags=...) at kernel/qeventloop.cpp:149
#8  0x00007f9600218035 in QEventLoop::exec (this=this@entry=0x7f9599943dc0, flags=...) at kernel/qeventloop.cpp:204
#9  0x00007f960010be89 in QThread::exec (this=this@entry=0x934f590) at thread/qthread.cpp:538
#10 0x00007f96001f8443 in QInotifyFileSystemWatcherEngine::run (this=0x934f590) at io/qfilesystemwatcher_inotify.cpp:265
#11 0x00007f960010e6ff in QThreadPrivate::start (arg=0x934f590) at thread/qthread_unix.cpp:349
#12 0x00007f95f9d5d6aa in start_thread (arg=0x7f9599944700) at pthread_create.c:333
#13 0x00007f95ff8a9eed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7f96025ae7c0 (LWP 31168)):
[KCrash Handler]
#6  0x0000000000000000 in ?? ()
#7  0x00007f960021fe09 in QMetaObject::cast (this=0x7f9602356d60 <KisDocument::staticMetaObject>, obj=0x966fc40) at kernel/qmetaobject.cpp:274
#8  0x00007f9601e46319 in qobject_cast<KisDocument*> (object=<optimized out>) at /usr/include/qt4/QtCore/qobject.h:380
#9  KisMainWindow::newView (this=this@entry=0x845f590, document=<optimized out>) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/ui/KisMainWindow.cpp:1910
#10 0x00007f9601e59bcd in KisMainWindow::qt_static_metacall (_o=0x845f590, _c=<optimized out>, _id=<optimized out>, _a=0x7ffd00419650) at /build/buildd/krita-2.9-2+git20150506+r73254/obj-x86_64-linux-gnu/krita/ui/KisMainWindow.moc:204
#11 0x00007f960022e19c in QMetaObject::activate (sender=sender@entry=0x290d2f0, m=m@entry=0x7f960057c4c0 <QSignalMapper::staticMetaObject>, local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7ffd00419650) at kernel/qobject.cpp:3567
#12 0x00007f9600235f22 in QSignalMapper::mapped (this=this@entry=0x290d2f0, _t1=0x966fc40) at .moc/release-shared/moc_qsignalmapper.cpp:135
#13 0x00007f960023605d in QSignalMapper::map (this=0x290d2f0, sender=0x937e0c0) at kernel/qsignalmapper.cpp:272
#14 0x00007f960022e19c in QMetaObject::activate (sender=sender@entry=0x937e0c0, m=m@entry=0x7f960171b540 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd004197d0) at kernel/qobject.cpp:3567
#15 0x00007f9600c1ffd2 in QAction::triggered (this=this@entry=0x937e0c0, _t1=false) at .moc/release-shared/moc_qaction.cpp:276
#16 0x00007f9600c21b57 in QAction::activate (this=this@entry=0x937e0c0, event=event@entry=QAction::Trigger) at kernel/qaction.cpp:1257
#17 0x00007f960107b44d in QMenuPrivate::activateCausedStack (this=this@entry=0x966c8d0, causedStack=..., action=action@entry=0x937e0c0, action_e=action_e@entry=QAction::Trigger, self=self@entry=true) at widgets/qmenu.cpp:1037
#18 0x00007f960107fe19 in QMenuPrivate::activateAction (this=0x966c8d0, action=0x937e0c0, action_e=QAction::Trigger, self=<optimized out>) at widgets/qmenu.cpp:1129
#19 0x00007f95faa30323 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libkdeui.so.5
#20 0x00007f9600c79dc8 in QWidget::event (this=0x965c810, event=0x7ffd00419ef0) at kernel/qwidget.cpp:8775
#21 0x00007f9601083e0b in QMenu::event (this=0x965c810, e=0x7ffd00419ef0) at widgets/qmenu.cpp:2480
#22 0x00007f9600c269bc in QApplicationPrivate::notify_helper (this=this@entry=0x13d4a10, receiver=receiver@entry=0x965c810, e=e@entry=0x7ffd00419ef0) at kernel/qapplication.cpp:4570
#23 0x00007f9600c2d63f in QApplication::notify (this=<optimized out>, receiver=receiver@entry=0x965c810, e=e@entry=0x7ffd00419ef0) at kernel/qapplication.cpp:4113
#24 0x00007f9601e019b7 in KisApplication::notify (this=<optimized out>, receiver=0x965c810, event=0x7ffd00419ef0) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/ui/KisApplication.cpp:489
#25 0x00007f960021917d in QCoreApplication::notifyInternal (this=0x7ffd0041a960, receiver=receiver@entry=0x965c810, event=event@entry=0x7ffd00419ef0) at kernel/qcoreapplication.cpp:955
#26 0x00007f9600c2cc9f in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#27 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x965c810, event=event@entry=0x7ffd00419ef0, alienWidget=alienWidget@entry=0x0, nativeWidget=nativeWidget@entry=0x965c810, buttonDown=buttonDown@entry=0x7f9601754578 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3178
#28 0x00007f9600ca6d3a in QETWidget::translateMouseEvent (this=this@entry=0x965c810, event=event@entry=0x7ffd0041a220) at kernel/qapplication_x11.cpp:4566
#29 0x00007f9600ca624c in QApplication::x11ProcessEvent (this=0x7ffd0041a960, event=event@entry=0x7ffd0041a220) at kernel/qapplication_x11.cpp:3626
#30 0x00007f9600cceba2 in x11EventSourceDispatch (s=0x13dd2d0, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#31 0x00007f95f9877c3d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#32 0x00007f95f9877f20 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#33 0x00007f95f9877fcc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#34 0x00007f960024880e in QEventDispatcherGlib::processEvents (this=0x115f260, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#35 0x00007f9600ccec66 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#36 0x00007f9600217cd1 in QEventLoop::processEvents (this=this@entry=0x7ffd0041a600, flags=...) at kernel/qeventloop.cpp:149
#37 0x00007f9600218035 in QEventLoop::exec (this=this@entry=0x7ffd0041a600, flags=...) at kernel/qeventloop.cpp:204
#38 0x00007f960021dab9 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1227
#39 0x00007f9600c24c1c in QApplication::exec () at kernel/qapplication.cpp:3828
#40 0x000000000040271c in main (argc=<optimized out>, argv=<optimized out>) at /build/buildd/krita-2.9-2+git20150506+r73254/krita/main.cc:179

Reported using DrKonqi
Comment 1 Stefano Bonicatti 2015-05-27 17:15:29 UTC
Git commit ced4fff5ecee94ccc4ed88f98cd36b4b86a904ef by Stefano Bonicatti.
Committed on 27/05/2015 at 17:14.
Pushed by stefanobonicatti into branch 'calligra/2.9'.

Fix crash due to window menu not properly updating on secondary windows

When opening more than one document on a window or closing one document
when multiple are already opened, the view list on the other windows
is not updated, so this either prevent the user to open a view
on a document that is actually opened, or to open a view on a document
that is actually closed, leading to a crash.

REVIEW: 123911

M  +0    -1    krita/ui/KisApplication.cpp
M  +5    -8    krita/ui/KisPart.cpp

http://commits.kde.org/calligra/ced4fff5ecee94ccc4ed88f98cd36b4b86a904ef
Comment 2 Stefano Bonicatti 2015-05-31 11:29:42 UTC
What i fixed in the previous commit is a different crash but that involves views on secondary windows and has a similar backtrace.
I was not able to reproduce this one earlier, and not even now, do you still have this crash?
Comment 3 Bastian Lembke 2015-06-02 15:11:13 UTC
(In reply to Stefano Bonicatti from comment #2)
> What i fixed in the previous commit is a different crash but that involves
> views on secondary windows and has a similar backtrace.
> I was not able to reproduce this one earlier, and not even now, do you still
> have this crash?

Hi 

sorry for the late response. Had a lot of work the past days and I think my spam filter doesn't like your response mail... or it was accidentally me.. stressful week 

I have not much time right now but it seems I can now open a second view. But it crashes sometimes when I close the second view. I try to test it more today or tomorrow. Hope this response is useful. Never used a bug trucker before ;)
Comment 4 Stefano Bonicatti 2015-06-02 15:24:04 UTC
> Hi 
> 
> sorry for the late response. Had a lot of work the past days and I think my
> spam filter doesn't like your response mail... or it was accidentally me..
> stressful week 
> 
> I have not much time right now but it seems I can now open a second view.
> But it crashes sometimes when I close the second view. I try to test it more
> today or tomorrow. Hope this response is useful. Never used a bug trucker
> before ;)

No problem, when you have time please test it and tell me if it's fixed for you, so i can close this issue.
For the other one, even if it might be somewhat related i would suggest opening a new bug report when you have a crash report, in the meantime i'll try to reproduce that crash.
Thanks.
Comment 5 Bastian Lembke 2015-06-04 14:50:44 UTC
Open a new view in a second "New Window" works now without a crash. Tested it today about 30 - 40 with different images and workspaces. I will submit a new bug report for the other crashes.