Bug 342896

Summary: crash on close when modification not saved
Product: [Applications] krita Reporter: Marty <baratecus>
Component: GeneralAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: halla
Priority: NOR    
Version: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Mint (Ubuntu based)   
OS: Linux   
Latest Commit: Version Fixed In:

Description Marty 2015-01-16 02:54:18 UTC
Application: krita (2.9 Beta 2)
KDE Platform Version: 4.13.3
Qt Version: 4.8.6
Operating System: Linux 3.13.0-24-generic x86_64
Distribution: Linux Mint 17 Qiana

I opened a new image using a predefined tempate (A3).  I scibbled on it.  Closed the app and selected no when asked to save.  App crashed.  I don't have  QT dbg loaded, can load and rerun if needed. 

The crash can be reproduced every time.


--- just in case it is useful, stdout/stderr from terminal
maz@ovuryte ~ $ /opt/project-neon/bin/krita 
################################### 
# Adding a tablet device: Wacom Cintiq 13HD stylus 
Device Type: "Stylus" 
# Axes limits data 
X:        0 59552 
Y:        0 33848 
Z:        0 0 
Pressure: 0 2048 
Rotation: -900 899 
T. Pres:  0 0 
################################### 
# Adding a tablet device: Wacom Cintiq 13HD eraser 
Device Type: "XFreeEraser" 
# Axes limits data 
X:        0 59552 
Y:        0 33848 
Z:        0 0 
Pressure: 0 2048 
Rotation: 0 1 
T. Pres:  0 0 
krita(5509) KoResourceServer<T, Policy>::loadResources: Loading resource  "/home/maz/.kde/share/apps/krita/patterns/SF4580.pat" failed 
OpenGL version 1.1 or higher is present. 
OpenGL version 1.2 or higher is present. 
OpenGL version 1.3 or higher is present. 
OpenGL version 1.4 or higher is present. 
OpenGL version 1.5 or higher is present. 
OpenGL version 2.0 or higher is present. 
OpenGL version 2.1 or higher is present. 
OpenGL version 3.0 or higher is present. 
krita(5509)/koffice (lib komain) KoRuler::createGuideToolConnection: No guides tool found, skipping connection 
krita(5509)/koffice (lib komain) KoRuler::createGuideToolConnection: No guides tool found, skipping connection 
krita(5509) CanvasData::activateToolActions: "InteractionTool" : action "object_order_raise" conflicts with canvas action "rotate_canvas_right" shortcut: "Ctrl+]" 
krita(5509) CanvasData::activateToolActions: "InteractionTool" : action "object_order_lower" conflicts with canvas action "rotate_canvas_left" shortcut: "Ctrl+[" 
krita(5509) CanvasData::activateToolActions: "InteractionTool" : action "object_order_raise" conflicts with canvas action "rotate_canvas_right" shortcut: "Ctrl+]" 
krita(5509) CanvasData::activateToolActions: "InteractionTool" : action "object_order_lower" conflicts with canvas action "rotate_canvas_left" shortcut: "Ctrl+[" 
QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
QLayout: Attempting to add QLayout "" to QWidget "", which already has a layout
QCoreApplication::postEvent: Unexpected null receiver
QThread: Destroyed while thread is still running
QCoreApplication::postEvent: Unexpected null receiver
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
QGLContext::makeCurrent(): Cannot make invalid context current.
KCrash: Application 'krita' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit
sock_file=/home/maz/.kde/socket-ovuryte/kdeinit4__0







-- 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 0x7f0daebb37c0 (LWP 5509))]

Thread 2 (Thread 0x7f0d758e1700 (LWP 5520)):
[KCrash Handler]
#5  0x00007f0dac9b36fe in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f0d7f9bb87f in ImageLoader::sigItemContentChanged (this=this@entry=0x2f3a9a0, _t1=0x319c560) at /build/buildd/krita-testing-2+git20150115+r73626-51/obj-x86_64-linux-gnu/krita/plugins/extensions/dockers/imagedocker/moc_image_strip_scene.cpp:97
#7  0x00007f0d7f9c6051 in ImageLoader::run (this=0x2f3a9a0) at /build/buildd/krita-testing-2+git20150115+r73626-51/krita/plugins/extensions/dockers/imagedocker/image_strip_scene.cpp:69
#8  0x00007f0dac89d32f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f0da6bf3182 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#10 0x00007f0dac03d00d in clone () from /lib/x86_64-linux-gnu/libc.so.6

Thread 1 (Thread 0x7f0daebb37c0 (LWP 5509)):
#0  0x00007f0dac0373e9 in syscall () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f0dac89bdd3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f0dac898275 in QMutex::lockInternal() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f0dac9b22c5 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f0dac9b2ad9 in QObject::disconnect(QObject const*, char const*, QObject const*, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f0da736aa87 in ?? () from /usr/lib/x86_64-linux-gnu/libQtDBus.so.4
#6  0x00007f0da73a9cac in ?? () from /usr/lib/x86_64-linux-gnu/libQtDBus.so.4
#7  0x00007f0dac9b387a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f0dac9b427f in QObject::destroyed(QObject*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f0dac9b8193 in QObject::~QObject() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007f0da77ecc29 in KClipboardSynchronizer::~KClipboardSynchronizer() () from /usr/lib/libkdeui.so.5
#11 0x00007f0dabf7e259 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#12 0x00007f0dabf7e2a5 in exit () from /lib/x86_64-linux-gnu/libc.so.6
#13 0x00007f0dabf63ecc in __libc_start_main () from /lib/x86_64-linux-gnu/libc.so.6
#14 0x0000000000402c60 in _start ()


Reproducible: Always

Steps to Reproduce:
1. start krita
2. ctrl-n - create new document (I did this with the A3 template)
3. scribble on the canvas
4. close krita
5. select no when asked to save

Actual Results:  
Segfault

Expected Results:  
not seqfault
Comment 1 Marty 2015-01-16 03:03:56 UTC
i just came across 337005 which may be a dup, hard to tell as that one doesn't have a stack trace.
Comment 2 Halla Rempt 2015-01-29 10:40:50 UTC
Hm, the crash happens in the reference images docker. There must be some image in the directory the reference images docker reads that crashes Qt :-(
Comment 3 Halla Rempt 2015-01-29 10:58:05 UTC
Git commit 74993bf4a705f001d54e036d9548631213468046 by Boudewijn Rempt.
Committed on 29/01/2015 at 10:55.
Pushed by rempt into branch 'calligra/2.9'.

M  +27   -41   krita/plugins/extensions/dockers/imagedocker/image_strip_scene.cpp
M  +7    -7    krita/plugins/extensions/dockers/imagedocker/image_strip_scene.h

http://commits.kde.org/calligra/74993bf4a705f001d54e036d9548631213468046