SUMMARY kdiff3 crashes randomly when in the tree list of files a file is selected to display the difference. STEPS TO REPRODUCE 1. Run kdiff on two directories with files, some of which that contain differences 2. In the list of files select files marked as having differences OBSERVED RESULT Occasionally program crashes. EXPECTED RESULT Program always displays differences. SOFTWARE/OS VERSIONS Linux/KDE Plasma: KDE Plasma Version: KDE Frameworks Version: 5.115.0 Qt Version: 5.15.13 ADDITIONAL INFORMATION Backtrace (produced by DrKonqi 5.27.11): Application: KDiff3 (kdiff3), signal: Aborted [KCrash Handler] #4 __pthread_kill_implementation (no_tid=0, signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:44 #5 __pthread_kill_internal (signo=6, threadid=<optimized out>) at ./nptl/pthread_kill.c:78 #6 __GI___pthread_kill (threadid=<optimized out>, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 #7 0x00007c298104526e in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #8 0x00007c29810288ff in __GI_abort () at ./stdlib/abort.c:79 #9 0x00007c29814a5ffe in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6 #10 0x00007c29814bae9c in ?? () from /lib/x86_64-linux-gnu/libstdc++.so.6 #11 0x00007c29814a58db in __cxa_call_terminate () from /lib/x86_64-linux-gnu/libstdc++.so.6 #12 0x00007c29814ba6f0 in __gxx_personality_v0 () from /lib/x86_64-linux-gnu/libstdc++.so.6 #13 0x00007c2981df5539 in ?? () from /lib/x86_64-linux-gnu/libgcc_s.so.1 #14 0x00007c2981df5c11 in _Unwind_RaiseException () from /lib/x86_64-linux-gnu/libgcc_s.so.1 #15 0x00007c29814bb11b in __cxa_throw () from /lib/x86_64-linux-gnu/libstdc++.so.6 #16 0x00006408b17cc747 in ?? () #17 0x00006408b17b8f9c in ?? () #18 0x00006408b17cb9df in ?? () #19 0x00006408b1815b18 in ?? () #20 0x00007c2981b12e16 in ?? () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #21 0x00007c2982764f94 in QAction::triggered(bool) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #22 0x00007c2982767eab in QAction::activate(QAction::ActionEvent) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #23 0x00007c2982768acd in QAction::event(QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #24 0x00007c298276bd45 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Widgets.so.5 #25 0x00007c2981ad8118 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #26 0x00007c2981f77b3c in QShortcutMap::dispatchEvent(QKeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #27 0x00007c2981f787b3 in QShortcutMap::tryShortcut(QKeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #28 0x00007c2981f1b512 in QWindowSystemInterface::handleShortcutEvent(QWindow*, unsigned long, int, QFlags<Qt::KeyboardModifier>, unsigned int, unsigned int, unsigned int, QString const&, bool, unsigned short) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #29 0x00007c2981f414d5 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #30 0x00007c2981f17bfc in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5 #31 0x00007c297cafcd06 in ?? () from /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5 #32 0x00007c29801145b5 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #33 0x00007c2980173717 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #34 0x00007c2980113a53 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #35 0x00007c2981b35279 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #36 0x00007c2981ad6a7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #37 0x00007c2981adf3e8 in QCoreApplication::exec() () from /lib/x86_64-linux-gnu/libQt5Core.so.5 #38 0x00006408b17cf287 in ?? () #39 0x00007c298102a1ca in __libc_start_call_main (main=main@entry=0x6408b17ce110, argc=argc@entry=3, argv=argv@entry=0x7ffd6ab0ed38) at ../sysdeps/nptl/libc_start_call_main.h:58 #40 0x00007c298102a28b in __libc_start_main_impl (main=0x6408b17ce110, argc=3, argv=0x7ffd6ab0ed38, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffd6ab0ed28) at ../csu/libc-start.c:360 #41 0x00006408b17d3965 in ?? () [Inferior 1 (process 2219238) detached
I believe 1.11.4 should be more stable and still builds against Qt 5.15 and kf5 5.100+. Any bug fixes would be applied there and to master which is qt6/kf6 only. 1.10.7 is also available with a few bug fixes although this code is receiving no further updates. I will keep this open for a little while in case in shows up on master or 1.11.x but its entirely possible this was fixed. 3814f2463763865a0cdcd04d8c14db62775d6233 fixed one source for exceptions being thrown. Which is what we have here.
Is this reproducible on 1.12?
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME. For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging. Thank you for helping us make KDE software even better for everyone!
🐛🧹 This bug has been in NEEDSINFO status with no change for at least 30 days. Closing as RESOLVED WORKSFORME.