Bug 328649

Summary: Krita crashes, Internal Error when Switching OpenGL mode
Product: [Applications] krita Reporter: Tyson Tan <tysontanx>
Component: GeneralAssignee: Dmitry Kazakov <dimula73>
Status: RESOLVED FIXED    
Severity: crash CC: halla, paulgeraskin
Priority: NOR Keywords: drkonqi
Version: 2.9 Beta   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Tyson Tan 2013-12-11 03:39:54 UTC
Application: krita (2.9 Pre-Alpha)
KDE Platform Version: 4.11.3 (Compiled from sources)
Qt Version: 4.8.2
Operating System: Linux 3.12.4-gnu x86_64
Distribution: Trisquel 6.0

-- Information about the crash:
- What I was doing when the application crashed:
I was switching OpenGL mode between ON and OFF. 

- Custom settings of the application:
Preferences > Display > OpenGL > Enable OpenGL (ON/OFF)

- Environment
Krita 2.9-alpha rev 4f57febc 
Trisquel 6.0 (Ubuntu 12.04 derivative)
Gnome 3.4
Gnome Classic Session

- Detail
It doesn't crash everytime when I flip the switch. But I found it crashes more frequently when a very large document (7000x4612, multiple layers including transparent spaces) was openned. Sometime it doesn't crash immediately but popup multiple error windows instead, with following messages:

Krita has encoutered an internal error:
ASSERT (krita): "object == d>eventReceiver" in file
/home/tysontan/kde4/src/calligra/krita/input/kis_input_manager.cpp, line 527
(this is my source location)
<Ignore><Abort>

If I click Abort, Krita would close itself.

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 0x7f0e61709780 (LWP 2940))]

Thread 7 (Thread 0x7f0e4739e700 (LWP 2944)):
#0  0x00007f0e60bb7a43 in poll () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f0e57dcdff6 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f0e57dce45a in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f0e4fc4d5e6 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007f0e57def9b5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6  0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f0e3387c700 (LWP 2945)):
#0  0x00007f0e5829ed84 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f0e5e56e5ab in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0e5e56a3e4 in QSemaphore::acquire(int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f0e5d3f24ce in KisTileDataPooler::waitForWork (this=this@entry=0x18b9b80) at /home/tysontan/kde4/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:162
#4  0x00007f0e5d3f287b in KisTileDataPooler::run (this=0x18b9b80) at /home/tysontan/kde4/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:184
#5  0x00007f0e5e56e09b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#7  0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#8  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f0e3307b700 (LWP 2946)):
#0  0x00007f0e5829ed84 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f0e5e56e5ab in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0e5e56a829 in QSemaphore::tryAcquire(int, int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f0e5d4109da in KisTileDataSwapper::run (this=0x18b9bb8) at /home/tysontan/kde4/src/calligra/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#4  0x00007f0e5e56e09b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#6  0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f0e17076700 (LWP 2953)):
#0  0x00007f0e60bbc763 in select () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f0e5e699866 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0e5e69ecb2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f0e5e69f1a3 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f0e5e56b077 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f0e5e64bb6f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f0e5e56e09b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#10 0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f0e31a2f700 (LWP 2964)):
#0  0x00007f0e5829ed84 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007f0e5e56e5ab in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0e5f5769a4 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#3  0x00007f0e5e56e09b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f0e16875700 (LWP 2965)):
#0  0x00007f0e60bbc763 in select () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f0e5e699866 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0e5e69ecb2 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f0e5e69f1a3 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f0e5e56b077 in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f0e5e64bb6f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f0e5e56e09b in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f0e5829ae9a in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#10 0x00007f0e60bc33fd in clone () from /lib/x86_64-linux-gnu/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f0e61709780 (LWP 2940)):
[KCrash Handler]
#6  KisImage::xRes (this=0x0) at /home/tysontan/kde4/src/calligra/krita/image/kis_image.cc:770
#7  0x00007f0e6063c47a in KisCoordinatesConverter::imageScale (this=0x1bcebf90, scaleX=0x7fff4a3f2010, scaleY=0x7fff4a3f2018) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_coordinates_converter.cpp:422
#8  0x00007f0e60771679 in KisOpenGLCanvas2::drawImage (this=this@entry=0x1bfc6a80) at /home/tysontan/kde4/src/calligra/krita/ui/opengl/kis_opengl_canvas2.cpp:349
#9  0x00007f0e60772121 in KisOpenGLCanvas2::renderCanvasGL (this=this@entry=0x1bfc6a80) at /home/tysontan/kde4/src/calligra/krita/ui/opengl/kis_opengl_canvas2.cpp:558
#10 0x00007f0e60772146 in KisOpenGLCanvas2::paintGL (this=0x1bfc6a80) at /home/tysontan/kde4/src/calligra/krita/ui/opengl/kis_opengl_canvas2.cpp:214
#11 0x00007f0e5c0493f0 in QGLWidget::glDraw() () from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#12 0x00007f0e5c048d89 in QGLWidget::paintEvent(QPaintEvent*) () from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#13 0x00007f0e5f0bcf66 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#14 0x00007f0e5c04b208 in QGLWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#15 0x00007f0e5f06c7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#16 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#17 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x1bfc6a80, event=0x7fff4a3f2cc0) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#18 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#19 0x00007f0e5f0b8c06 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007f0e5f284b77 in QWidgetPrivate::repaint_sys(QRegion const&) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#21 0x00007f0e5f0af8d4 in QWidgetPrivate::syncBackingStore() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#22 0x00007f0e5f0bd47c in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#23 0x00007f0e5c04b208 in QGLWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtOpenGL.so.4
#24 0x00007f0e5f06c7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x1bfc6a80, event=0x1ae68220) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#27 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007f0e5e67110a in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007f0e5f11597a in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#31 0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#32 0x00007f0e5f53cf86 in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#33 0x00007f0e5f55f232 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007f0e5f55f38f in QMessageBox::critical(QWidget*, QString const&, QString const&, QFlags<QMessageBox::StandardButton>, QMessageBox::StandardButton) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#35 0x00007f0e5d41106b in kis_assert_common (assertion=<optimized out>, file=<optimized out>, line=527, throwException=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/image/kis_assert.cpp:61
#36 0x00007f0e607dfb9a in KisInputManager::eventFilter (this=0x1bd16e00, object=0x4ca79540, event=0x1b0f79e0) at /home/tysontan/kde4/src/calligra/krita/ui/input/kis_input_manager.cpp:527
#37 0x00007f0e5e66d4b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#38 0x00007f0e5f06c77f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#39 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#40 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x4ca79540, event=0x1b0f79e0) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#41 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#42 0x00007f0e5e67110a in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#43 0x00007f0e5f11597a in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#44 0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#45 0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#46 0x00007f0e5f53cf86 in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#47 0x00007f0e5f55f232 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#48 0x00007f0e5f55f38f in QMessageBox::critical(QWidget*, QString const&, QString const&, QFlags<QMessageBox::StandardButton>, QMessageBox::StandardButton) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#49 0x00007f0e5d41106b in kis_assert_common (assertion=<optimized out>, file=<optimized out>, line=527, throwException=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/image/kis_assert.cpp:61
#50 0x00007f0e607dfb9a in KisInputManager::eventFilter (this=0x1bd16e00, object=0x4ca79540, event=0x1fb08b00) at /home/tysontan/kde4/src/calligra/krita/ui/input/kis_input_manager.cpp:527
#51 0x00007f0e5e66d4b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#52 0x00007f0e5f06c77f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#53 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#54 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x4ca79540, event=0x1fb08b00) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#55 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#56 0x00007f0e5e67110a in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#57 0x00007f0e5f11597a in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#58 0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#59 0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#60 0x00007f0e5f53cf86 in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#61 0x00007f0e5f55f232 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#62 0x00007f0e5f55f38f in QMessageBox::critical(QWidget*, QString const&, QString const&, QFlags<QMessageBox::StandardButton>, QMessageBox::StandardButton) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#63 0x00007f0e5d41106b in kis_assert_common (assertion=<optimized out>, file=<optimized out>, line=527, throwException=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/image/kis_assert.cpp:61
#64 0x00007f0e607dfb9a in KisInputManager::eventFilter (this=0x1bd16e00, object=0x4ca79540, event=0x7fff4a3f6b90) at /home/tysontan/kde4/src/calligra/krita/ui/input/kis_input_manager.cpp:527
#65 0x00007f0e5e66d4b8 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#66 0x00007f0e5f06c77f in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#67 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#68 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x4ca79540, event=0x7fff4a3f6b90) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#69 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#70 0x00007f0e5f0bcdd6 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#71 0x00007f0e6072749d in KisView2::event (this=0xcd39610, event=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/ui/kis_view2.cpp:679
#72 0x00007f0e5f06c7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#73 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#74 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0xcd39610, event=0x7fff4a3f6b90) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#75 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#76 0x00007f0e5f0bcdd6 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#77 0x00007f0e5f49711b in QMainWindow::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#78 0x00007f0e5fea1738 in KXmlGuiWindow::event(QEvent*) () from /usr/lib/libkdeui.so.5
#79 0x00007f0e5f06c7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#80 0x00007f0e5f071583 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#81 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x1b30550, event=0x7fff4a3f6b90) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#82 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#83 0x00007f0e5f070fdc in QApplicationPrivate::enterModal(QWidget*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#84 0x00007f0e5f0bf732 in QWidgetPrivate::show_helper() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#85 0x00007f0e5f0bf972 in QWidget::setVisible(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#86 0x00007f0e5f53e1ac in QDialog::setVisible(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#87 0x00007f0e5f53cf40 in QDialog::exec() () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#88 0x00007f0e5f55f232 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#89 0x00007f0e5f55f38f in QMessageBox::critical(QWidget*, QString const&, QString const&, QFlags<QMessageBox::StandardButton>, QMessageBox::StandardButton) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#90 0x00007f0e5d41106b in kis_assert_common (assertion=<optimized out>, file=<optimized out>, line=521, throwException=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/image/kis_assert.cpp:61
#91 0x00007f0e606359ea in KisCanvas2::setCanvasWidget (this=this@entry=0x1223710, widget=widget@entry=0x4ca79540) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_canvas2.cpp:193
#92 0x00007f0e60635b99 in KisCanvas2::createQPainterCanvas (this=this@entry=0x1223710) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_canvas2.cpp:339
#93 0x00007f0e60638938 in KisCanvas2::createCanvas (this=this@entry=0x1223710, useOpenGL=useOpenGL@entry=false) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_canvas2.cpp:377
#94 0x00007f0e60638b39 in KisCanvas2::resetCanvas (this=this@entry=0x1223710, useOpenGL=useOpenGL@entry=false) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_canvas2.cpp:456
#95 0x00007f0e60638cd0 in KisCanvas2::slotConfigChanged (this=0x1223710) at /home/tysontan/kde4/src/calligra/krita/ui/canvas/kis_canvas2.cpp:744
#96 0x00007f0e60639035 in KisCanvas2::qt_static_metacall (_o=0x1223710, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /home/tysontan/kde4/build/calligra/krita/ui/kis_canvas2.moc:111
#97 0x00007f0e5e681781 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#98 0x00007f0e60724ddd in KisView2::slotPreferences (this=0xcd39610) at /home/tysontan/kde4/src/calligra/krita/ui/kis_view2.cpp:975
#99 0x00007f0e607272f5 in KisView2::qt_static_metacall (_o=0x0, _c=QMetaObject::InvokeMetaMethod, _id=1625851768, _a=0x7f0e60e88730) at /home/tysontan/kde4/build/calligra/krita/ui/kis_view2.moc:83
#100 0x00007f0e5e681781 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#101 0x00007f0e5f066072 in QAction::triggered(bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#102 0x00007f0e5f06625f in QAction::activate(QAction::ActionEvent) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#103 0x00007f0e5f4b85e9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#104 0x00007f0e5f4be742 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#105 0x00007f0e5fe65b50 in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libkdeui.so.5
#106 0x00007f0e5f0bcfb4 in QWidget::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#107 0x00007f0e5f4bfcdb in QMenu::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#108 0x00007f0e5f06c7b4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#109 0x00007f0e5f071f2f in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#110 0x00007f0e60231f88 in KoApplication::notify (this=<optimized out>, receiver=0x1bc32d0, event=0x7fff4a3f80a0) at /home/tysontan/kde4/src/calligra/libs/main/KoApplication.cpp:554
#111 0x00007f0e5e66d32c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#112 0x00007f0e5f06d782 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#113 0x00007f0e5f0ed1e1 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#114 0x00007f0e5f0ebace in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#115 0x00007f0e5f115aba in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#116 0x00007f0e5e66be62 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#117 0x00007f0e5e66c0b7 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#118 0x00007f0e5e671407 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#119 0x00007f0e610ca79a in kdemain (argc=<optimized out>, argv=<optimized out>) at /home/tysontan/kde4/src/calligra/krita/main.cc:99
#120 0x00007f0e60af076d in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#121 0x00000000004006b1 in _start ()

Reported using DrKonqi
Comment 1 Halla Rempt 2013-12-11 09:07:19 UTC
Hi Tyson,

Thanks for your report. It's a very recent regression that's hitting a lot of people... I'm assigning to Dmitry.
Comment 2 Paul Geraskin 2013-12-11 09:20:46 UTC
here is my screen http://i.imgur.com/up94hNJ.png
It happens when i try to switch OpenGL on. 
I removed all default settings before (kritaarc).
Comment 3 Dmitry Kazakov 2013-12-12 13:35:20 UTC
Git commit 5638428294c7b8f3f1db7c86bee60a8ba21825ff by Dmitry Kazakov.
Committed on 12/12/2013 at 13:34.
Pushed by dkazakov into branch 'master'.

Fix crash when switching QPainter->openGL canvases

The openGL context should be initialized at least once in the beginning.

This surely fixes:
Related: bug 327684, bug 328627

Please check whether these bugs are fixed now:

M  +1    -0    krita/ui/canvas/kis_canvas2.cpp
M  +5    -0    krita/ui/opengl/kis_opengl.cpp
M  +2    -0    krita/ui/opengl/kis_opengl.h

http://commits.kde.org/calligra/5638428294c7b8f3f1db7c86bee60a8ba21825ff
Comment 4 Dmitry Kazakov 2013-12-12 13:35:51 UTC
Git commit 00b41abdb63fec901ebadbb356240158a24c0e36 by Dmitry Kazakov.
Committed on 12/12/2013 at 13:34.
Pushed by dkazakov into branch 'calligra/2.8'.

Fix crash when switching QPainter->openGL canvases

The openGL context should be initialized at least once in the beginning.

This surely fixes:
Related: bug 327684, bug 328627

Please check whether these bugs are fixed now:

M  +1    -0    krita/ui/canvas/kis_canvas2.cpp
M  +5    -0    krita/ui/opengl/kis_opengl.cpp
M  +2    -0    krita/ui/opengl/kis_opengl.h

http://commits.kde.org/calligra/00b41abdb63fec901ebadbb356240158a24c0e36
Comment 5 Tyson Tan 2013-12-12 16:34:38 UTC
I can confirm that Krita 2.9-alpah doesn't crash when switching OpenGL now. Thank you! :)