Bug 343214 - karchive crashes in prepareWriting when there isn't enough diskspace
Summary: karchive crashes in prepareWriting when there isn't enough diskspace
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: kdecore (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: kdelibs bugs
URL:
Keywords:
: 273718 345062 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-01-23 16:32 UTC by Kirill
Modified: 2015-03-13 18:39 UTC (History)
4 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 Kirill 2015-01-23 16:32:59 UTC
Krita 2.9 Beta 2
Qt: 4.8.6
KDE Development Platform: 4.14.2
Kernel: 3.13.0-45-generic
Distribution: Xubuntu 14.04

Bug looks similar to this: https://bugs.kde.org/show_bug.cgi?id=273718 though I'm not sure

I believe that this crash is related to lack of space on my hard drive.
When I am trying to save my work after a lot of changes, or when I saving a new file big enough to outweigh free HDD space, Krita crashes. Though once I got an error message (smth. like "not enough free space on disk"), it happened after an attempt to save is not very large new file on same HDD.

Backtrace:

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

Thread 5 (Thread 0xa76ffb40 (LWP 4139)):
#0  0xb77d6424 in __kernel_vsyscall ()
#1  0xb41ddd4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5d456ec in __pthread_cond_wait (cond=0x990ed38, mutex=0x990ed20) at forward.c:149
#3  0xb5f680f5 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#4  0xb5f63d7f in QSemaphore::acquire(int) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#5  0xb5688e6a in waitForWork (this=0x990eb18) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/kis_tile_data_pooler.cc:162
#6  KisTileDataPooler::run (this=0x990eb18) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/kis_tile_data_pooler.cc:184
#7  0xb5f67b6f in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#8  0xb41d9f70 in start_thread (arg=0xa76ffb40) at pthread_create.c:312
#9  0xb5d3850e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 4 (Thread 0xa5dfeb40 (LWP 4140)):
#0  0xb77d6424 in __kernel_vsyscall ()
#1  0xb41ddd4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5d456ec in __pthread_cond_wait (cond=0x990efb0, mutex=0x990ef98) at forward.c:149
#3  0xb5f680f5 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#4  0xb5f641cf in QSemaphore::tryAcquire(int, int) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#5  0xb56b40de in KisTileDataSwapper::waitForWork (this=this@entry=0x990eb38) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#6  0xb56b4344 in KisTileDataSwapper::run (this=0x990eb38) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#7  0xb5f67b6f in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#8  0xb41d9f70 in start_thread (arg=0xa5dfeb40) at pthread_create.c:312
#9  0xb5d3850e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 3 (Thread 0xa9cffb40 (LWP 4142)):
#0  0xb77d6424 in __kernel_vsyscall ()
#1  0xb41ddd4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5d456ec in __pthread_cond_wait (cond=0x9a0e7c8, mutex=0x9a0e7b0) at forward.c:149
#3  0xb5f680f5 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#4  0xb6b427e3 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#5  0xb5f67b6f in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#6  0xb41d9f70 in start_thread (arg=0xa9cffb40) at pthread_create.c:312
#7  0xb5d3850e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 2 (Thread 0xa84ffb40 (LWP 4143)):
#0  0xb5f667d9 in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#1  0xb60a9d9b in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#2  0xb40f39b3 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb40f42df in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb40f4528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb60a995f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#6  0xb6078823 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#7  0xb6078b49 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#8  0xb5f6523d in QThread::exec() () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#9  0xb6058c44 in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#10 0xb5f67b6f in ?? () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#11 0xb41d9f70 in start_thread (arg=0xa84ffb40) at pthread_create.c:312
#12 0xb5d3850e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 1 (Thread 0xb1081740 (LWP 4131)):
[KCrash Handler]
#6  0xb62ec04d in KZip::doPrepareWriting(QString const&, QString const&, QString const&, long long, unsigned int, long, long, long) () from /usr/lib/libkdecore.so.5
#7  0xb62bc598 in KArchive::prepareWriting(QString const&, QString const&, QString const&, long long, unsigned int, long, long, long) () from /usr/lib/libkdecore.so.5
#8  0xb4b954b6 in KoZipStore::openWrite (this=0x178f7318, name=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/libs/odf/KoZipStore.cpp:154
#9  0xb4b91b01 in KoStore::open (this=0x178f7318, _name=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/libs/odf/KoStore.cpp:243
#10 0xb73303a7 in KisKraSaveVisitor::saveAnnotations (this=0xbf96e4f0, layer=0x9e9aee0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:285
#11 0xb733622b in KisKraSaveVisitor::visit (this=0xbf96e4f0, layer=0x9e9aee0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:102
#12 0xb5882bd7 in KisPaintLayer::accept (this=0x9e9aee0, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_paint_layer.cc:178
#13 0xb586dae2 in KisNodeVisitor::visitAllInverse (this=this@entry=0xbf96e4f0, node=node@entry=0x9e89e38, breakOnFail=breakOnFail@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_node_visitor.cpp:48
#14 0xb733689f in KisKraSaveVisitor::visit (this=0xbf96e4f0, layer=0x9e89e38) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:119
#15 0xb5809547 in KisGroupLayer::accept (this=0x9e89e38, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_group_layer.cc:233
#16 0xb586dae2 in KisNodeVisitor::visitAllInverse (this=this@entry=0xbf96e4f0, node=node@entry=0x9e64168, breakOnFail=breakOnFail@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_node_visitor.cpp:48
#17 0xb733689f in KisKraSaveVisitor::visit (this=0xbf96e4f0, layer=0x9e64168) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:119
#18 0xb5809547 in KisGroupLayer::accept (this=0x9e64168, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_group_layer.cc:233
#19 0xb733de90 in KisKraSaver::saveBinaryData (this=0x15e46c80, store=store@entry=0x178f7318, image=..., uri=..., external=external@entry=true, autosave=autosave@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_saver.cpp:119
#20 0xb74a8cfc in KisDocument::completeSaving (this=0x9dcd678, store=0x178f7318) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:1916
#21 0xb74b519f in KisDocument::saveNativeFormatCalligra (this=this@entry=0x9dcd678, store=store@entry=0x178f7318) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:1010
#22 0xb74b57fb in KisDocument::saveNativeFormat (this=0x9dcd678, file=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:973
#23 0xb74ace18 in KisDocument::saveFile (this=0x9dcd678) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:733
#24 0xb74b8422 in KisDocument::save (this=0x9dcd678) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:2345
#25 0xb74f18d6 in KisMainWindow::saveDocument (this=this@entry=0x944d328, document=0x9dcd678, saveas=<optimized out>, saveas@entry=false, silent=silent@entry=false, specialOutputFlag=specialOutputFlag@entry=0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisMainWindow.cpp:958
#26 0xb74f31e6 in KisMainWindow::slotFileSave (this=0x944d328) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisMainWindow.cpp:1192
#27 0xb74f9b91 in KisMainWindow::qt_static_metacall (_o=0x944d328, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0xbf96eb48) at /build/buildd/krita-testing-2+git20150122+r73655-51/obj-i686-linux-gnu/krita/ui/KisMainWindow.moc:151
#28 0xb608f0f7 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#29 0xb65cf72d in QAction::triggered(bool) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#30 0xb65d1324 in QAction::activate(QAction::ActionEvent) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#31 0xb6a75ceb in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#32 0xb6a7ad98 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#33 0xb6a7ede9 in QMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#34 0xb4593efe in KMenu::mouseReleaseEvent(QMouseEvent*) () from /usr/lib/libkdeui.so.5
#35 0xb66303fa in QWidget::event(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#36 0xb6a7f2af in QMenu::event(QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#37 0xb65d67f4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#38 0xb65deea0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#39 0xb74a0cbd in KisApplication::notify (this=0xbf96f7a4, receiver=0x9c99088, event=0xbf96f174) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisApplication.cpp:500
#40 0xb6079e4a in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#41 0xb65dcb53 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#42 0xb6660ba0 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#43 0xb665fec5 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#44 0xb668b524 in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#45 0xb40f41e3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#46 0xb40f4468 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#47 0xb40f4528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#48 0xb60a995f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#49 0xb668b5de in ?? () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#50 0xb6078823 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#51 0xb6078b49 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#52 0xb607e8fe in QCoreApplication::exec() () from /usr/lib/i386-linux-gnu/libQtCore.so.4
#53 0xb65d4a24 in QApplication::exec() () from /usr/lib/i386-linux-gnu/libQtGui.so.4
#54 0x08049fa9 in main (argc=1, argv=0xbf96f894) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/main.cc:170

Reproducible: Always

Steps to Reproduce:
1. Put the file on the disc with a very small amount of free space.
2. Start Krita and open the file.
3. Make some changes in it: add new layers, scale to bigger size, etc. (total file size should are exceeding the amount of free disk space)
4. Try to save it.

Actual Results:  
Programm window disappears. Shortly after that bugreport window shows up.

Expected Results:  
File should be saved or user should be warned about lack of free space on disk.
Comment 1 Halla Rempt 2015-01-23 16:40:22 UTC
*** Bug 273718 has been marked as a duplicate of this bug. ***
Comment 2 Halla Rempt 2015-01-23 16:41:27 UTC
Yes, that's definitely the same thing, and it is very likely that it is caused by running out of disk space. Keep in mind that Linux keeps a certain percentage of disk space reserved for root, so it might look like you've still got space, but you cannot actually use it.
Comment 3 Halla Rempt 2015-01-24 14:07:33 UTC
Could you install the kdelibs debug packages and reproduce? I don't have a disk with insufficient space, I'm afraid... And I cannot figure out where kzip is crashing.
Comment 4 Kirill 2015-01-25 10:30:39 UTC
Forgot to mention that the file is on an external hard drive, although it does not really matter, I guess.

(In reply to Boudewijn Rempt from comment #3)
> Could you install the kdelibs debug packages and reproduce? I don't have a
> disk with insufficient space, I'm afraid... And I cannot figure out where
> kzip is crashing.

-- Backtrace

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

Thread 5 (Thread 0xaa723b40 (LWP 4358)):
#0  0xb773d424 in __kernel_vsyscall ()
#1  0xb4143d4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5cab6ec in __pthread_cond_wait (cond=0xa768b70, mutex=0xa768b58) at forward.c:149
#3  0xb5ece0f5 in wait (time=4294967295, this=0xa768b58) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0xa768b24, mutex=mutex@entry=0xa768b20, time=time@entry=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0xb5ec9d7f in QSemaphore::acquire (this=this@entry=0xa768958, n=n@entry=1) at thread/qsemaphore.cpp:144
#6  0xb55eee6a in waitForWork (this=0xa768950) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/kis_tile_data_pooler.cc:162
#7  KisTileDataPooler::run (this=0xa768950) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/kis_tile_data_pooler.cc:184
#8  0xb5ecdb6f in QThreadPrivate::start (arg=0xa768950) at thread/qthread_unix.cpp:349
#9  0xb413ff70 in start_thread (arg=0xaa723b40) at pthread_create.c:312
#10 0xb5c9e50e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 4 (Thread 0xabecbb40 (LWP 4359)):
#0  0xb773d424 in __kernel_vsyscall ()
#1  0xb4143d4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5cab6ec in __pthread_cond_wait (cond=0xa768de8, mutex=0xa768dd0) at forward.c:149
#3  0xb5ece0f5 in wait (time=4294967295, this=0xa768dd0) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0xa768d9c, mutex=mutex@entry=0xa768d98, time=time@entry=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0xb5eca1cf in QSemaphore::tryAcquire (this=0xa768d70, n=n@entry=1, timeout=timeout@entry=-1) at thread/qsemaphore.cpp:221
#6  0xb561a0de in KisTileDataSwapper::waitForWork (this=this@entry=0xa768970) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#7  0xb561a344 in KisTileDataSwapper::run (this=0xa768970) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#8  0xb5ecdb6f in QThreadPrivate::start (arg=0xa768970) at thread/qthread_unix.cpp:349
#9  0xb413ff70 in start_thread (arg=0xabecbb40) at pthread_create.c:312
#10 0xb5c9e50e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 3 (Thread 0xa87feb40 (LWP 4361)):
#0  0xb773d424 in __kernel_vsyscall ()
#1  0xb4143d4b in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:187
#2  0xb5cab6ec in __pthread_cond_wait (cond=0xa938a28, mutex=0xa938a10) at forward.c:149
#3  0xb5ece0f5 in wait (time=4294967295, this=0xa938a10) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=this@entry=0xa919654, mutex=mutex@entry=0xa919650, time=time@entry=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0xb6aa87e3 in QFileInfoGatherer::run (this=0xa919648) at dialogs/qfileinfogatherer.cpp:214
#6  0xb5ecdb6f in QThreadPrivate::start (arg=0xa919648) at thread/qthread_unix.cpp:349
#7  0xb413ff70 in start_thread (arg=0xa87feb40) at pthread_create.c:312
#8  0xb5c9e50e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 2 (Thread 0xa9bfdb40 (LWP 4362)):
#0  __GI___pthread_mutex_lock (mutex=0x9f33ef88) at ../nptl/pthread_mutex_lock.c:161
#1  0xb5cab8f4 in pthread_mutex_lock (mutex=0x9f33ef88) at forward.c:192
#2  0xb409f0e0 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb4059f8e in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb405a468 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb405a528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb600f95f in QEventDispatcherGlib::processEvents (this=0xa7a63428, flags=...) at kernel/qeventdispatcher_glib.cpp:436
#7  0xb5fde823 in QEventLoop::processEvents (this=this@entry=0xa9bfd258, flags=...) at kernel/qeventloop.cpp:149
#8  0xb5fdeb49 in QEventLoop::exec (this=this@entry=0xa9bfd258, flags=...) at kernel/qeventloop.cpp:204
#9  0xb5ecb23d in QThread::exec (this=this@entry=0xa9198b8) at thread/qthread.cpp:537
#10 0xb5fbec44 in QInotifyFileSystemWatcherEngine::run (this=0xa9198b8) at io/qfilesystemwatcher_inotify.cpp:265
#11 0xb5ecdb6f in QThreadPrivate::start (arg=0xa9198b8) at thread/qthread_unix.cpp:349
#12 0xb413ff70 in start_thread (arg=0xa9bfdb40) at pthread_create.c:312
#13 0xb5c9e50e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:129

Thread 1 (Thread 0xb0fe7740 (LWP 4345)):
[KCrash Handler]
#7  0xb625204d in KZip::doPrepareWriting (this=0xb0bb918, name=..., user=..., group=..., perm=33188, atime=-1, mtime=-1, ctime=-1) at ../../kdecore/io/kzip.cpp:1008
#8  0xb6222598 in KArchive::prepareWriting (this=0xb0bb918, name=..., user=..., group=..., size=0, perm=perm@entry=33188, atime=atime@entry=-1, mtime=mtime@entry=-1, ctime=ctime@entry=-1) at ../../kdecore/io/karchive.cpp:380
#9  0xb4afb4b6 in KoZipStore::openWrite (this=0x18380a18, name=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/libs/odf/KoZipStore.cpp:154
#10 0xb4af7b01 in KoStore::open (this=0x18380a18, _name=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/libs/odf/KoStore.cpp:243
#11 0xb72973a7 in KisKraSaveVisitor::saveAnnotations (this=0xbf9780d0, layer=0xad3b938) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:285
#12 0xb729d22b in KisKraSaveVisitor::visit (this=0xbf9780d0, layer=0xad3b938) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:102
#13 0xb57e8bd7 in KisPaintLayer::accept (this=0xad3b938, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_paint_layer.cc:178
#14 0xb57d3ae2 in KisNodeVisitor::visitAllInverse (this=this@entry=0xbf9780d0, node=node@entry=0xad20600, breakOnFail=breakOnFail@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_node_visitor.cpp:48
#15 0xb729d89f in KisKraSaveVisitor::visit (this=0xbf9780d0, layer=0xad20600) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:119
#16 0xb576f547 in KisGroupLayer::accept (this=0xad20600, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_group_layer.cc:233
#17 0xb57d3ae2 in KisNodeVisitor::visitAllInverse (this=this@entry=0xbf9780d0, node=node@entry=0xad0e1b0, breakOnFail=breakOnFail@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_node_visitor.cpp:48
#18 0xb729d89f in KisKraSaveVisitor::visit (this=0xbf9780d0, layer=0xad0e1b0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_save_visitor.cpp:119
#19 0xb576f547 in KisGroupLayer::accept (this=0xad0e1b0, v=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/image/kis_group_layer.cc:233
#20 0xb72a4e90 in KisKraSaver::saveBinaryData (this=0xb1b9628, store=store@entry=0x18380a18, image=..., uri=..., external=external@entry=true, autosave=autosave@entry=false) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/kra/kis_kra_saver.cpp:119
#21 0xb740fcfc in KisDocument::completeSaving (this=0xaa936b8, store=0x18380a18) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:1916
#22 0xb741c19f in KisDocument::saveNativeFormatCalligra (this=this@entry=0xaa936b8, store=store@entry=0x18380a18) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:1010
#23 0xb741c7fb in KisDocument::saveNativeFormat (this=0xaa936b8, file=...) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:973
#24 0xb7413e18 in KisDocument::saveFile (this=0xaa936b8) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:733
#25 0xb741f422 in KisDocument::save (this=0xaa936b8) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisDocument.cpp:2345
#26 0xb74588d6 in KisMainWindow::saveDocument (this=this@entry=0xa54c8b0, document=0xaa936b8, saveas=<optimized out>, saveas@entry=false, silent=silent@entry=false, specialOutputFlag=specialOutputFlag@entry=0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisMainWindow.cpp:958
#27 0xb745a1e6 in KisMainWindow::slotFileSave (this=0xa54c8b0) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisMainWindow.cpp:1192
#28 0xb7460b91 in KisMainWindow::qt_static_metacall (_o=_o@entry=0xa54c8b0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=10, _a=0xbf978728) at /build/buildd/krita-testing-2+git20150122+r73655-51/obj-i686-linux-gnu/krita/ui/KisMainWindow.moc:151
#29 0xb5ff50f7 in QMetaObject::activate (sender=sender@entry=0xab46ce8, m=m@entry=0xb6e96718 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0xbf978728) at kernel/qobject.cpp:3539
#30 0xb653572d in QAction::triggered (this=this@entry=0xab46ce8, _t1=false) at .moc/release-shared/moc_qaction.cpp:276
#31 0xb6537324 in QAction::activate (this=this@entry=0xab46ce8, event=event@entry=QAction::Trigger) at kernel/qaction.cpp:1257
#32 0xb65374b0 in QAction::event (this=this@entry=0xab46ce8, e=e@entry=0xbf978a68) at kernel/qaction.cpp:1183
#33 0xb433a6bd in KAction::event (this=0xab46ce8, event=0xbf978a68) at ../../kdeui/actions/kaction.cpp:131
#34 0xb653c7f4 in QApplicationPrivate::notify_helper (this=0x9ec9220, receiver=0xab46ce8, e=0xbf978a68) at kernel/qapplication.cpp:4567
#35 0xb65432d3 in QApplication::notify (this=this@entry=0xbf9794e4, receiver=receiver@entry=0xab46ce8, e=e@entry=0xbf978a68) at kernel/qapplication.cpp:4353
#36 0xb7407cbd in KisApplication::notify (this=0xbf9794e4, receiver=0xab46ce8, event=0xbf978a68) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisApplication.cpp:500
#37 0xb5fdfe4a in QCoreApplication::notifyInternal (this=0xbf9794e4, receiver=0xab46ce8, event=event@entry=0xbf978a68) at kernel/qcoreapplication.cpp:953
#38 0xb65748bb in sendEvent (event=0xbf978a68, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#39 QShortcutMap::dispatchEvent (this=this@entry=0x9ec92cc, e=e@entry=0xbf978d68) at kernel/qshortcutmap.cpp:887
#40 0xb6574a3d in QShortcutMap::tryShortcutEvent (this=0x9ec92cc, o=0x163494b8, e=0xbf978d68) at kernel/qshortcutmap.cpp:367
#41 0xb6544ca8 in QApplication::notify (this=this@entry=0xbf9794e4, receiver=receiver@entry=0x163494b8, e=e@entry=0xbf978d68) at kernel/qapplication.cpp:3991
#42 0xb7407cbd in KisApplication::notify (this=0xbf9794e4, receiver=0x163494b8, event=0xbf978d68) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/ui/KisApplication.cpp:500
#43 0xb5fdfe4a in QCoreApplication::notifyInternal (this=0xbf9794e4, receiver=receiver@entry=0x163494b8, event=event@entry=0xbf978d68) at kernel/qcoreapplication.cpp:953
#44 0xb653ac7d in sendSpontaneousEvent (event=0xbf978d68, receiver=0x163494b8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#45 qt_sendSpontaneousEvent (receiver=0x163494b8, event=event@entry=0xbf978d68) at kernel/qapplication.cpp:5565
#46 0xb65ee829 in QKeyMapper::sendKeyEvent (keyWidget=keyWidget@entry=0x163494b8, grab=grab@entry=false, type=QEvent::KeyPress, code=83, modifiers=..., text=..., autorepeat=autorepeat@entry=false, count=1, nativeScanCode=nativeScanCode@entry=39, nativeVirtualKey=115, nativeModifiers=nativeModifiers@entry=20) at kernel/qkeymapper_x11.cpp:1866
#47 0xb65eec18 in QKeyMapperPrivate::translateKeyEvent (this=0x9f07868, keyWidget=keyWidget@entry=0x163494b8, event=event@entry=0xbf9790dc, grab=grab@entry=false) at kernel/qkeymapper_x11.cpp:1836
#48 0xb65c4da5 in QApplication::x11ProcessEvent (this=0xbf9794e4, event=event@entry=0xbf9790dc) at kernel/qapplication_x11.cpp:3642
#49 0xb65f1524 in x11EventSourceDispatch (s=0x9ebfda8, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#50 0xb405a1e3 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#51 0xb405a468 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#52 0xb405a528 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#53 0xb600f93b in QEventDispatcherGlib::processEvents (this=this@entry=0x9d8cdc8, flags=...) at kernel/qeventdispatcher_glib.cpp:434
#54 0xb65f15de in QGuiEventDispatcherGlib::processEvents (this=0x9d8cdc8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#55 0xb5fde823 in QEventLoop::processEvents (this=this@entry=0xbf979398, flags=...) at kernel/qeventloop.cpp:149
#56 0xb5fdeb49 in QEventLoop::exec (this=this@entry=0xbf979398, flags=...) at kernel/qeventloop.cpp:204
#57 0xb5fe48fe in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1225
#58 0xb653aa24 in QApplication::exec () at kernel/qapplication.cpp:3828
#59 0x08049fa9 in main (argc=1, argv=0xbf9795d4) at /build/buildd/krita-testing-2+git20150122+r73655-51/krita/main.cc:170
Comment 5 Halla Rempt 2015-01-27 10:22:34 UTC
Thanks! From inside Krita, I cannot fix this bug, it's an issue in karchive :-(
Comment 6 mvowada 2015-03-12 11:28:07 UTC
*** Bug 345062 has been marked as a duplicate of this bug. ***
Comment 7 Halla Rempt 2015-03-12 11:40:45 UTC
Hm... I actually cannot reproduce it with KDE 4.14.5, I wonder if it hasn't gotten fixed in the meantime.
Comment 8 Halla Rempt 2015-03-12 11:43:13 UTC
Sorry, I was wrong: I can reproduce, the thing is, there needs to be a little bit of space left to start with, and I was trying with a 100% full usb stick.
Comment 9 Halla Rempt 2015-03-12 18:38:46 UTC
See 

https://git.reviewboard.kde.org/r/122922/
https://git.reviewboard.kde.org/r/122923/

For patches for kdelibs and karchive.
Comment 10 Halla Rempt 2015-03-13 08:33:30 UTC
Git commit 188f463af6c2143c8495ac1dc5a1a7c40abb875e by Boudewijn Rempt.
Committed on 13/03/2015 at 08:30.
Pushed by rempt into branch 'master'.

Remove two asserts.

Two reasons:

In these cases, returning false is better, because the asserts indicate
circumstances that are not caused by faulty code but by issues in the
environment.

And if asserts are not compiled in, calling device() when there is no space
left will return 0, leading to a crash.

REVIEW:122923

M  +5    -2    src/kzip.cpp

http://commits.kde.org/karchive/188f463af6c2143c8495ac1dc5a1a7c40abb875e