https://bugs.kde.org/show_bug.cgi?id=400166
Bug ID: 400166 Summary: Crash in thumbnailer, probably a badly imported emf file Product: calligrawords Version: 3.1.0 Platform: Compiled Sources OS: Linux Status: REPORTED Severity: crash Priority: NOR Component: doc Assignee: calligra-words-bugs-n...@kde.org Reporter: jtam...@gmail.com Target Milestone: --- Created attachment 115833 --> https://bugs.kde.org/attachment.cgi?id=115833&action=edit The simplified file to reproduce the crash The calligra words thumbnailer crashes with this file (with only a picture in the header and another in the footer). STEPS TO REPRODUCE 1. Copy the attached file to a directory. 2. Enable the previews in that directory. or Open the file with calligra-words. SOFTWARE VERSIONS (available in About System) KDE Plasma Version: (git master) KDE Frameworks Version: 5.51 (git) Qt Version: 5.11.2 [KCrash Handler] #5 0x00007f241c09c544 in convertIndexedToARGB32PM(uint*, uint const*, int, QVector<unsigned int> const*, QDitherInfo*) (buffer=0x7ffcb9c704f0, src=0x7ffcb9c704f0, count=33, clut=0x0) at painting/qdrawhelper.cpp:491 #6 0x00007f241c0b134e in BlendSrcGeneric::fetch(int, int, int) (len=<optimized out>, y=0, x=0, this=0x7ffcb9c6e450) at painting/qdrawhelper.cpp:4015 #7 0x00007f241c0b134e in handleSpans<BlendSrcGeneric>(int, QT_FT_Span_ const*, QSpanData const*, BlendSrcGeneric&) (count=count@entry=11, spans=spans@entry=0x7ffcb9c7a5e0, data=data@entry=0x4864c20, handler=...) at painting/qdrawhelper.cpp:3959 #8 0x00007f241c0aff7e in blend_src_generic_rgb64(int, QSpan const*, void*) (count=11, spans=0x7ffcb9c7a5e0, userData=0x4864c20) at painting/qdrawhelper.cpp:4077 #9 0x00007f241c0d7c81 in fillRect_normalized(QRect const&, QSpanData*, QRasterPaintEnginePrivate*) (r=..., data=data@entry=0x4864c20, pe=pe@entry=0x4864830) at painting/qpaintengine_raster.cpp:1556 #10 0x00007f241c0dd932 in QRasterPaintEngine::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) (this=0x1bf36f0, r=..., img=..., sr=...) at ../../include/QtCore/../../src/corelib/tools/qrect.h:184 #11 0x00007f241c0f5365 in QPainter::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) (this=this@entry=0x7ffcb9c7b5d8, targetRect=..., image=..., sourceRect=..., flags=flags@entry=...) at ../../include/QtCore/../../src/corelib/tools/qrect.h:644 #12 0x00007f23eeb2d3b6 in QPainter::drawImage(QRect const&, QImage const&, QRect const&, QFlags<Qt::ImageConversionFlag>) (flags=..., sourceRect=<synthetic pointer>..., image=..., targetRect=<synthetic pointer>..., this=0x7ffcb9c7b5d8) at /usr/include/qt5/QtCore/qrect.h:269 #13 0x00007f23eeb2d3b6 in Libemf::OutputPainterStrategy::stretchDiBits(Libemf::StretchDiBitsRecord&) (this=0x7ffcb9c7b440, record=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfOutputPainterStrategy.cpp:1367 #14 0x00007f23eeb204df in Libemf::Parser::readRecord(QDataStream&) (this=this@entry=0x7ffcb9c7b430, stream=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:819 #15 0x00007f23eeb20d82 in Libemf::Parser::loadFromStream(QDataStream&) (this=this@entry=0x7ffcb9c7b430, stream=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:123 #16 0x00007f23eeb21379 in Libemf::Parser::load(QByteArray const&) (this=0x7ffcb9c7b430, contents=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:100 #17 0x00007f23ed69be54 in () at /usr/lib64/qt5/plugins/calligra/shapes/calligra_shape_vector.so #18 0x00007f23ed69c101 in () at /usr/lib64/qt5/plugins/calligra/shapes/calligra_shape_vector.so #19 0x00007f23ed69b5c7 in () at /usr/lib64/qt5/plugins/calligra/shapes/calligra_shape_vector.so #20 0x00007f23fc0e752e in KWPage::thumbnail(QSize const&, KoShapeManager*, bool) const (this=this@entry=0x7ffcb9c7b830, size=..., shapeManager=0x6d726b0, asPrint=asPrint@entry=true) at /g/5kde/calligra/calligra/words/part/KWPage.cpp:339 #21 0x00007f23fc0d5488 in KWDocument::generatePreview(QSize const&) (this=<optimized out>, size=...) at /usr/include/qt5/QtCore/qflags.h:120 #22 0x00007f23fec0985b in CalligraCreator::create(QString const&, int, int, QImage&) (this=0x1e82180, path=..., width=128, height=128, image=...) at /g/5kde/calligra/calligra/extras/thumbnail/calligracreator.cpp:125 #23 0x00007f2416003835 in ThumbnailProtocol::get(QUrl const&) (this=0x7ffcb9c7bbd0, url=...) at /usr/include/qt5/QtCore/qflags.h:120 #24 0x00007f2415c1c57c in KIO::SlaveBase::dispatch(int, QByteArray const&) (this=0x7ffcb9c7bbd0, command=<optimized out>, data=...) at /g/5kde/frameworks/kio/src/core/slavebase.cpp:1119 #25 0x00007f2415c1d8ed in KIO::SlaveBase::dispatchLoop() (this=this@entry=0x7ffcb9c7bbd0) at /g/5kde/frameworks/kio/src/core/slavebase.cpp:318 #26 0x00007f241600102f in kdemain(int, char**) (argc=<optimized out>, argv=<optimized out>) at /g/5kde/kde/kdenetwork/kio-extras/thumbnail/thumbnail.cpp:138 #27 0x0000000000409a56 in launch(int, char const*, char const*, char const*, int, char const*, bool, char const*, bool, char const*) (argc=argc@entry=4, _name=_name@entry=0x17bd178 "/opt/kde5/lib64/plugins/kf5/kio/thumbnail.so", args=<optimized out>, args@entry=0x17bd1a5 "thumbnail", cwd=cwd@entry=0x0, envc=envc@entry=0, envs=<optimized out>, envs@entry=0x17bd21f "", reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x40d17c "0") at /g/5kde/frameworks/kinit/src/kdeinit/kinit.cpp:706 #28 0x000000000040aa35 in handle_launcher_request(int, char const*) (sock=7, who=who@entry=0x40d1d3 "launcher") at /g/5kde/frameworks/kinit/src/kdeinit/kinit.cpp:1146 #29 0x000000000040b277 in handle_requests(pid_t) (waitForPid=waitForPid@entry=0) at /g/5kde/frameworks/kinit/src/kdeinit/kinit.cpp:1339 #30 0x000000000040ba2f in main(int, char**) (argc=2, argv=0x7ffcb9c7c378) at /g/5kde/frameworks/kinit/src/kdeinit/kinit.cpp:1785 or [KCrash Handler] #5 0x00007f25410d4544 in convertIndexedToARGB32PM(uint*, uint const*, int, QVector<unsigned int> const*, QDitherInfo*) (buffer=0x7f2516b88b90, src=0x7f2516b88b90, count=341, clut=0x0) at painting/qdrawhelper.cpp:491 #6 0x00007f25410e934e in BlendSrcGeneric::fetch(int, int, int) (len=<optimized out>, y=0, x=0, this=0x7f2516b86af0) at painting/qdrawhelper.cpp:4015 #7 0x00007f25410e934e in handleSpans<BlendSrcGeneric>(int, QT_FT_Span_ const*, QSpanData const*, BlendSrcGeneric&) (count=count@entry=113, spans=spans@entry=0x7f2516b92c80, data=data@entry=0x7f25040556c0, handler=...) at painting/qdrawhelper.cpp:3959 #8 0x00007f25410e7f7e in blend_src_generic_rgb64(int, QSpan const*, void*) (count=113, spans=0x7f2516b92c80, userData=0x7f25040556c0) at painting/qdrawhelper.cpp:4077 #9 0x00007f254110fc81 in fillRect_normalized(QRect const&, QSpanData*, QRasterPaintEnginePrivate*) (r=..., data=data@entry=0x7f25040556c0, pe=pe@entry=0x7f25040552d0) at painting/qpaintengine_raster.cpp:1556 #10 0x00007f2541115932 in QRasterPaintEngine::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) (this=0x7f25040c7a60, r=..., img=..., sr=...) at ../../include/QtCore/../../src/corelib/tools/qrect.h:184 #11 0x00007f254112d365 in QPainter::drawImage(QRectF const&, QImage const&, QRectF const&, QFlags<Qt::ImageConversionFlag>) (this=this@entry=0x7f2516b93c78, targetRect=..., image=..., sourceRect=..., flags=flags@entry=...) at ../../include/QtCore/../../src/corelib/tools/qrect.h:644 #12 0x00007f2524b8f3b6 in QPainter::drawImage(QRect const&, QImage const&, QRect const&, QFlags<Qt::ImageConversionFlag>) (flags=..., sourceRect=<synthetic pointer>..., image=..., targetRect=<synthetic pointer>..., this=0x7f2516b93c78) at /usr/include/qt5/QtCore/qrect.h:269 #13 0x00007f2524b8f3b6 in Libemf::OutputPainterStrategy::stretchDiBits(Libemf::StretchDiBitsRecord&) (this=0x7f2516b93ae0, record=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfOutputPainterStrategy.cpp:1367 #14 0x00007f2524b824df in Libemf::Parser::readRecord(QDataStream&) (this=this@entry=0x7f2516b93ad0, stream=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:819 #15 0x00007f2524b82d82 in Libemf::Parser::loadFromStream(QDataStream&) (this=this@entry=0x7f2516b93ad0, stream=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:123 #16 0x00007f2524b83379 in Libemf::Parser::load(QByteArray const&) (this=0x7f2516b93ad0, contents=...) at /g/5kde/calligra/calligra/libs/vectorimage/libemf/EmfParser.cpp:100 -- You are receiving this mail because: You are watching all bug changes.