Bug 350043 - krita-testing crashes when saving LAB files, RGB works fine
Summary: krita-testing crashes when saving LAB files, RGB works fine
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: File formats (other bugs)
Version First Reported In: unspecified
Platform: Other Linux
: NOR critical
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
: 350254 (view as bug list)
Depends on:
Blocks:
 
Reported: 2015-07-09 03:14 UTC by JayJay
Modified: 2015-07-17 19:55 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description JayJay 2015-07-09 03:14:37 UTC
Krita crashes everytime trying to save a LAB file, it tries to save *.kra.randomNumber.new file which cannot be opened after renaming to *.kra

Reproducible: Always

Steps to Reproduce:
1.create a LAB file
2.Save or SaveAs
3.

Actual Results:  
Crash

Expected Results:  
no crash
Comment 1 Halla Rempt 2015-07-09 09:06:58 UTC
Outch, you're right. And it's because we now save the mergedimage.png using our own png code...

Thread 1 (Thread 0x7f36db2017c0 (LWP 21303)):
[KCrash Handler]
#5  0x00007f36d1fbb187 in raise () at /lib64/libc.so.6
#6  0x00007f36d1fbc538 in abort () at /lib64/libc.so.6
#7  0x00007f36d32b62b4 in qt_message_output(QtMsgType, char const*) () at /usr/lib64/libQtCore.so.4
#8  0x00007f36d32b6439 in  () at /usr/lib64/libQtCore.so.4
#9  0x00007f36d32b6c44 in qFatal(char const*, ...) () at /usr/lib64/libQtCore.so.4
#10 0x00007f36d32b6c8a in  () at /usr/lib64/libQtCore.so.4
#11 0x00007f36da8bd83a in KisPNGConverter::buildFile(QIODevice*, KisWeakSharedPtr<KisImage>, KisSharedPtr<KisPaintDevice>, KisSharedPtr<KisAnnotation>*, KisSharedPtr<KisAnnotation>*, KisPNGOptions, KisMetaData::Store*) (this=this@entry=0x7fff9bcefe30, iodevice=iodevice@entry=0x7fff9bcefdb0, image=..., device=..., annotationsStart=annotationsStart@entry=0x0, annotationsEnd=annotationsEnd@entry=0x0, options=..., metaData=metaData@entry=0x0) at /home/boud/kde/src/2.9/krita/ui/kis_png_converter.cpp:953
#12 0x00007f36da8beb91 in KisPNGConverter::saveDeviceToStore(QString const&, KisWeakSharedPtr<KisImage>, KisSharedPtr<KisPaintDevice>, KoStore*, KisMetaData::Store*) (filename=..., image=..., dev=..., store=store@entry=0xc449190, metaData=metaData@entry=0x0) at /home/boud/kde/src/2.9/krita/ui/kis_png_converter.cpp:834
#13 0x00007f36da9380f7 in KisKraSaver::saveBinaryData(KoStore*, KisWeakSharedPtr<KisImage>, QString const&, bool, bool) (this=0x911c260, store=store@entry=0xc449190, image=..., uri=..., external=external@entry=true, autosave=autosave@entry=false) at /home/boud/kde/src/2.9/krita/ui/kra/kis_kra_saver.cpp:187
#14 0x00007f36daa9dbc0 in KisDocument::completeSaving(KoStore*) (this=0x44122b0, store=0xc449190) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:1882
#15 0x00007f36daaa8e87 in KisDocument::saveNativeFormatCalligra(KoStore*) (this=this@entry=0x44122b0, store=store@entry=0xc449190) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:1009
#16 0x00007f36daaa9426 in KisDocument::saveNativeFormat(QString const&) (this=this@entry=0x44122b0, file=...) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:972
#17 0x00007f36daaa2791 in KisDocument::saveFile() (this=0x44122b0) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:732
#18 0x00007f36daaab7f1 in KisDocument::save() (this=0x44122b0) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:2316
#19 0x00007f36daaacc9c in KisDocument::saveAs(KUrl const&) (this=0x44122b0, kurl=...) at /home/boud/kde/src/2.9/krita/ui/KisDocument.cpp:2282
#20 0x00007f36daae13b7 in KisMainWindow::saveDocument(KisDocument*, bool, bool, int) (this=this@entry=0x2f69100, document=0x44122b0, saveas=<optimized out>, saveas@entry=true, silent=silent@entry=false, specialOutputFlag=specialOutputFlag@entry=0) at /home/boud/kde/src/2.9/krita/ui/KisMainWindow.cpp:943
#21 0x00007f36daae2776 in KisMainWindow::slotFileSaveAs() (this=0x2f69100) at /home/boud/kde/src/2.9/krita/ui/KisMainWindow.cpp:1185
#22 0x00007f36daae91a4 in KisMainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x2f69100, _c=<optimized out>, _id=<optimized out>, _a=0x7fff9bcf0ea0) at /home/boud/kde/build/2.9/krita/ui/KisMainWindow.moc:179
#23 0x00007f36d33d61fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#24 0x00007f36d3dca622 in QAction::triggered(bool) () at /usr/lib64/libQtGui.so.4
#25 0x00007f36d3dcbfd3 in QAction::activate(QAction::ActionEvent) () at /usr/lib64/libQtGui.so.4
#26 0x00007f36d41f4b79 in  () at /usr/lib64/libQtGui.so.4
#27 0x00007f36d41f90c9 in  () at /usr/lib64/libQtGui.so.4
#28 0x00007f36d41fb357 in QMenu::keyPressEvent(QKeyEvent*) () at /usr/lib64/libQtGui.so.4
#29 0x00007f36d4b9eab0 in KMenu::keyPressEvent(QKeyEvent*) () at /usr/lib64/libkdeui.so.5
#30 0x00007f36d3e1fad4 in QWidget::event(QEvent*) () at /usr/lib64/libQtGui.so.4
#31 0x00007f36d41fcf2b in QMenu::event(QEvent*) () at /usr/lib64/libQtGui.so.4
#32 0x00007f36d3dd076c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#33 0x00007f36d3dd7f61 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQtGui.so.4
#34 0x00007f36daa96a37 in KisApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=0x3dade00, event=0x7fff9bcf1530) at /home/boud/kde/src/2.9/krita/ui/KisApplication.cpp:541
#35 0x00007f36d33c22ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQtCore.so.4
#36 0x00007f36d3e6aab7 in  () at /usr/lib64/libQtGui.so.4
#37 0x00007f36d3e6ae59 in  () at /usr/lib64/libQtGui.so.4
#38 0x00007f36d3e46a5f in QApplication::x11ProcessEvent(_XEvent*) () at /usr/lib64/libQtGui.so.4
#39 0x00007f36d3e6df30 in  () at /usr/lib64/libQtGui.so.4
#40 0x00007f36d33c0e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#41 0x00007f36d33c1165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQtCore.so.4
#42 0x00007f36d33c65b9 in QCoreApplication::exec() () at /usr/lib64/libQtCore.so.4
#43 0x0000000000402b69 in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /home/boud/kde/src/2.9/krita/main.cc:194
Comment 2 Halla Rempt 2015-07-09 17:39:51 UTC
Git commit 7b6c71ed0b3d05a33958b006fda48593bbd28abb by Boudewijn Rempt.
Committed on 09/07/2015 at 17:39.
Pushed by rempt into branch 'calligra/2.9'.

The crash happened because png cannot save anything but gray and
rgb, so we need to convert the projection if the image is in
another colorspace.

M  +10   -1    krita/ui/kra/kis_kra_saver.cpp

http://commits.kde.org/calligra/7b6c71ed0b3d05a33958b006fda48593bbd28abb
Comment 3 wolthera 2015-07-17 12:02:12 UTC
*** Bug 350254 has been marked as a duplicate of this bug. ***
Comment 4 JayJay 2015-07-17 19:55:09 UTC
Saving LAB works fine now, thanks