Bug 438095 - Kate crashes trying to save text file
Summary: Kate crashes trying to save text file
Status: REPORTED
Alias: None
Product: kio-extras
Classification: Frameworks and Libraries
Component: Thumbnails and previews (show other bugs)
Version: 21.04.1
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2021-06-04 21:03 UTC by Simeon Bird
Modified: 2021-06-12 18:32 UTC (History)
1 user (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 Simeon Bird 2021-06-04 21:03:24 UTC
Application: kate (21.04.1)

Qt Version: 5.15.2
Frameworks Version: 5.82.0
Operating System: Linux 5.12.8-300.fc34.x86_64 x86_64
Windowing System: Wayland
Drkonqi Version: 5.21.5
Distribution: Fedora 34 (Workstation Edition)

-- Information about the crash:
- What I was doing when the application crashed:
Tried to save a new text file in a directory. A lag of a couple of seconds and then the crash.

This was reproducable, but only for that specific directory, which has about 20 PDF files in.
Seems related to the thumbnails somehow. When I moved the PDFs into a subdir and out again, 
forcing the thumbnails to be regenerated, the crash went away. 
Suggests that it is perhaps related to loading thumbnails in some older thumbnail format?

- Custom settings of the application:
Generates thumbnails for PDFs and Office files

The crash can be reproduced every time.

-- Backtrace:
Application: Kate (kate), signal: Segmentation fault

[KCrash Handler]
#4  0x00007fac875bd766 in __memmove_avx_unaligned_erms () from /lib64/libc.so.6
#5  0x00007fac87f4625f in QImage::copy(QRect const&) const () from /lib64/libQt5Gui.so.5
#6  0x00007fac8950e60d in KIO::PreviewJobPrivate::slotThumbData(KIO::Job*, QByteArray const&) () from /lib64/libKF5KIOWidgets.so.5
#7  0x00007fac87af74b0 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#8  0x00007fac8935ac38 in KIO::TransferJob::data(KIO::Job*, QByteArray const&) () from /lib64/libKF5KIOCore.so.5
#9  0x00007fac87af74b0 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#10 0x00007fac8933c926 in KIO::SlaveInterface::data(QByteArray const&) () from /lib64/libKF5KIOCore.so.5
#11 0x00007fac8933c33a in KIO::SlaveInterface::dispatch(int, QByteArray const&) () from /lib64/libKF5KIOCore.so.5
#12 0x00007fac8933460d in KIO::SlaveInterface::dispatch() () from /lib64/libKF5KIOCore.so.5
#13 0x00007fac8933dc62 in KIO::Slave::gotInput() () from /lib64/libKF5KIOCore.so.5
#14 0x00007fac87af74b0 in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#15 0x00007fac87aee257 in QObject::event(QEvent*) () from /lib64/libQt5Core.so.5
#16 0x00007fac8858fe73 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#17 0x00007fac87ac6f48 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#18 0x00007fac87ac9c76 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib64/libQt5Core.so.5
#19 0x00007fac87b13c57 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5Core.so.5
#20 0x00007fac85def4cf in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#21 0x00007fac85e434e8 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#22 0x00007fac85decc03 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#23 0x00007fac87b136f8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#24 0x00007fac87ac59b2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#25 0x00007fac8878ec87 in QDialog::exec() () from /lib64/libQt5Widgets.so.5
#26 0x00007fac8878ebc7 in QDialog::exec() () from /lib64/libQt5Widgets.so.5
#27 0x00007fac887a1b2d in QFileDialog::getSaveFileUrl(QWidget*, QString const&, QUrl const&, QString const&, QString*, QFlags<QFileDialog::Option>, QStringList const&) () from /lib64/libQt5Widgets.so.5
#28 0x00007fac89723a4d in KTextEditor::DocumentPrivate::documentSaveAs() () from /lib64/libKF5TextEditor.so.5
#29 0x00007fac896aabb5 in KTextEditor::DocumentPrivate::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /lib64/libKF5TextEditor.so.5
#30 0x00007fac87af74fd in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#31 0x00007fac88589686 in QAction::triggered(bool) () from /lib64/libQt5Widgets.so.5
#32 0x00007fac8858bf70 in QAction::activate(QAction::ActionEvent) () from /lib64/libQt5Widgets.so.5
#33 0x00007fac8858cb4f in QAction::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#34 0x00007fac8858fe73 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#35 0x00007fac87ac6f48 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#36 0x00007fac87f2c102 in QShortcutMap::dispatchEvent(QKeyEvent*) () from /lib64/libQt5Gui.so.5
#37 0x00007fac87f2c613 in QShortcutMap::tryShortcut(QKeyEvent*) () from /lib64/libQt5Gui.so.5
#38 0x00007fac87ee87e7 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) () from /lib64/libQt5Gui.so.5
#39 0x00007fac87f0015f in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /lib64/libQt5Gui.so.5
#40 0x00007fac87ee54fc in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Gui.so.5
#41 0x00007fac85859864 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5WaylandClient.so.5
#42 0x00007fac85def4cf in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#43 0x00007fac85e434e8 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#44 0x00007fac85decc03 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#45 0x00007fac87b136f8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#46 0x00007fac87ac59b2 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#47 0x00007fac87acd544 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#48 0x00005573636b04a4 in main ()
[Inferior 1 (process 4103) detached]

Possible duplicates by query: bug 437773, bug 436863, bug 435427, bug 432084, bug 431077.

Reported using DrKonqi
Comment 1 Simeon Bird 2021-06-04 21:14:27 UTC
Possibly related is a crash in kdeinit5 about the same time (just after the kate crash). I wonder if the syntax highlighting crashes and that breaks a thumbnail? Or maybe the kate crash brings down the syntax highlighting service?

Application: kdeinit5 (kdeinit5), signal: Segmentation fault

[KCrash Handler]
#4  0x00007f891e3d4594 in sljit_free_exec.lto_priv () from /lib64/libpcre2-16.so.0
#5  0x00007f891e3befd6 in pcre2_code_free_16 () from /lib64/libpcre2-16.so.0
#6  0x00007f891fa3b284 in QExplicitlySharedDataPointer<QRegularExpressionPrivate>::~QExplicitlySharedDataPointer() () from /lib64/libQt5Core.so.5
#7  0x00007f890410acfc in KSyntaxHighlighting::RegExpr::~RegExpr() [clone .lto_priv.0] () from /lib64/libKF5SyntaxHighlighting.so.5
#8  0x00007f890410d05e in std::_Sp_counted_ptr<KSyntaxHighlighting::DefinitionData*, (__gnu_cxx::_Lock_policy)2>::_M_dispose() () from /lib64/libKF5SyntaxHighlighting.so.5
#9  0x00007f8904107d92 in KSyntaxHighlighting::Definition::~Definition() () from /lib64/libKF5SyntaxHighlighting.so.5
#10 0x00007f890410e0c2 in QMapNode<QString, KSyntaxHighlighting::Definition>::destroySubTree() () from /lib64/libKF5SyntaxHighlighting.so.5
#11 0x00007f890410e1ba in QMapNode<QString, KSyntaxHighlighting::Definition>::destroySubTree() () from /lib64/libKF5SyntaxHighlighting.so.5
#12 0x00007f890410e512 in KSyntaxHighlighting::Repository::~Repository() () from /lib64/libKF5SyntaxHighlighting.so.5
#13 0x00007f89042cf9e9 in TextCreator::~TextCreator() () from /usr/lib64/qt5/plugins/textthumbnail.so
#14 0x00007f8920647d67 in ThumbnailProtocol::~ThumbnailProtocol() () from /usr/lib64/qt5/plugins/kf5/kio/thumbnail.so
#15 0x00007f8920649452 in kdemain () from /usr/lib64/qt5/plugins/kf5/kio/thumbnail.so
#16 0x00005562c35525ab in launch(int, char const*, char const*, char const*, int, char const*, bool, char const*, bool, char const*) ()
#17 0x00005562c3553d4b in handle_launcher_request(int, char const*) [clone .constprop.0] ()
#18 0x00005562c3554380 in handle_requests(int) ()
#19 0x00005562c354f0e1 in main ()
[Inferior 1 (process 5114) detached]
Comment 2 Simeon Bird 2021-06-04 21:15:39 UTC
This should be not in kate but the file chooser plugin, I think, but I'm not sure which framework that is under.
Comment 3 Christoph Cullmann 2021-06-12 18:32:24 UTC
Looks for me like some issue in the thumbnail io process.
Comment 4 Christoph Cullmann 2021-06-12 18:32:28 UTC
Looks for me like some issue in the thumbnail io process.