Bug 2239100 - core dump on exit after merge
Summary: core dump on exit after merge
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: kdiff3
Version: 38
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Vasiliy Glazov
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-09-15 07:54 UTC by Kim Bisgaard
Modified: 2023-10-04 02:33 UTC (History)
4 users (show)

Fixed In Version: kdiff3-1.10.6-1.fc39 kdiff3-1.10.6-1.fc38
Clone Of:
Environment:
Last Closed: 2023-10-03 13:58:58 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
test file 1 (33.71 KB, text/plain)
2023-09-22 23:46 UTC, Boleslaw Ciesielski
no flags Details
test file 2 (34.32 KB, text/plain)
2023-09-22 23:47 UTC, Boleslaw Ciesielski
no flags Details

Description Kim Bisgaard 2023-09-15 07:54:25 UTC
Application: kdiff3 (kdiff3), signal: Segmentation fault

[KCrash Handler]
#4  0x00007fed401db363 in QWidget::isActiveWindow() const () from /lib64/libQt5Widgets.so.5
#5  0x00007fed403ce24b in QDialog::setVisible(bool) () from /lib64/libQt5Widgets.so.5
#6  0x00007fed403cbb7d in QDialog::~QDialog() () from /lib64/libQt5Widgets.so.5
#7  0x0000557bfd0931e1 in std::shared_ptr<ProgressDialog>::~shared_ptr() [clone .lto_priv.0] ()
#8  0x00007fed3ec621e6 in __run_exit_handlers () from /lib64/libc.so.6
#9  0x00007fed3ec6232e in exit () from /lib64/libc.so.6
#10 0x00007fed3ec49b91 in __libc_start_call_main () from /lib64/libc.so.6
#11 0x00007fed3ec49c4b in __libc_start_main_impl () from /lib64/libc.so.6
#12 0x0000557bfd002185 in _start ()
[Inferior 1 (process 41470) detached]



Reproducible: Always

Steps to Reproduce:
1.I use rpmconf (with kdiff3 as merge tool
2.Upon end of merge i save/exit
3.
Actual Results:  
Nothing gets saved, and core dump happens


# rpm -q kdiff3 qt5-qtbase-gui
kdiff3-1.10.5-1.fc38.x86_64
qt5-qtbase-gui-5.15.10-5.fc38.x86_64

Comment 1 Vasiliy Glazov 2023-09-18 06:01:32 UTC
I can't reproduce that.

If it is still reproducible if kdiff3 run directly from terminal?

Comment 2 Kim Bisgaard 2023-09-18 06:58:28 UTC
Yes.

Output from commandline:
# kdiff3 -o /tmp/pgdg-fedora-all.repo -m /etc/yum.repos.d/pgdg-fedora-all.repo /etc/yum.repos.d/pgdg-fedora-all.repo.rpmnew 
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kf.notifications: Failed to play sound with canberra: Not available
kf.notifications: Failed to play sound with canberra: Not available
KCrash: Application 'kdiff3' crashing...
KCrash: Attempting to start /usr/libexec/drkonqi
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kf.kirigami: Failed to find a Kirigami platform plugin
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
file:///usr/lib64/qt5/qml/org/kde/kirigami.2/ContextDrawer.qml:135:9: QML ListView: Binding loop detected for property "topMargin"

Comment 3 Vasiliy Glazov 2023-09-18 07:38:00 UTC
Try to run it from user and not from root.

Comment 4 Kim Bisgaard 2023-09-18 08:43:03 UTC
Still crashes :-( 

[kim@kim ~]$ kdiff3 -o /tmp/kde-kim/pgdg-fedora-all.repo -m /etc/yum.repos.d/pgdg-fedora-all.repo /etc/yum.repos.d/pgdg-fedora-all.repo.rpmnew
KCrash: Application 'kdiff3' crashing...
KCrash: Attempting to start /usr/libexec/drkonqi

[1]+  Stopped                 kdiff3 -o /tmp/kde-kim/pgdg-fedora-all.repo -m /etc/yum.repos.d/pgdg-fedora-all.repo /etc/yum.repos.d/pgdg-fedora-all.repo.rpmnew

Comment 5 Boleslaw Ciesielski 2023-09-22 23:46:02 UTC
I can reproduce the crash on exit just by diffing two files (attached).

[pilot:/tmp] kdiff3 License.txt License3.txt
Segmentation fault (core dumped)
Exit 139
[pilot:/tmp] 

This is a regression in kdiff3-1.10.5-1.fc38.x86_64. Downgrading to kdiff3-1.10.0-1.fc38.x86_64 fixes the crash.

Note that I am not using Wayland.

But the call stack is different than the original report:

Thread 1 "kdiff3" received signal SIGSEGV, Segmentation fault.
0x00007fffe489c880 in QXcbConnection::removeWindowEventListener(unsigned int) () from /lib64/libQt5XcbQpa.so.5
(gdb) bt
#0  0x00007fffe489c880 in QXcbConnection::removeWindowEventListener(unsigned int) () from /lib64/libQt5XcbQpa.so.5
#1  0x00007fffe48ac63d in QXcbWindow::destroy() () from /lib64/libQt5XcbQpa.so.5
#2  0x00007fffe48ac73d in QXcbWindow::~QXcbWindow() () from /lib64/libQt5XcbQpa.so.5
#3  0x00007ffff203471d in non-virtual thunk to QXcbGlxWindow::~QXcbGlxWindow() ()
   from /usr/lib64/qt5/plugins/xcbglintegrations/libqxcb-glx-integration.so
#4  0x00007ffff6b77871 in QWindowPrivate::destroy() () from /lib64/libQt5Gui.so.5
#5  0x00007ffff73d873d in QWidgetPrivate::deleteTLSysExtra() () from /lib64/libQt5Widgets.so.5
#6  0x00007ffff73e7698 in QWidget::destroy(bool, bool) () from /lib64/libQt5Widgets.so.5
#7  0x00007ffff73eed44 in QWidget::~QWidget() () from /lib64/libQt5Widgets.so.5
#8  0x000055555564a1e1 in std::shared_ptr<ProgressDialog>::~shared_ptr() [clone .lto_priv.0] ()
#9  0x00007ffff5e621e6 in __run_exit_handlers () from /lib64/libc.so.6
#10 0x00007ffff5e6232e in exit () from /lib64/libc.so.6
#11 0x00007ffff5e49b91 in __libc_start_call_main () from /lib64/libc.so.6
#12 0x00007ffff5e49c4b in __libc_start_main_impl () from /lib64/libc.so.6
#13 0x00005555555b9185 in _start ()

Comment 6 Boleslaw Ciesielski 2023-09-22 23:46:48 UTC
Created attachment 1990145 [details]
test file 1

Comment 7 Boleslaw Ciesielski 2023-09-22 23:47:25 UTC
Created attachment 1990146 [details]
test file 2

Comment 8 Boleslaw Ciesielski 2023-09-22 23:57:27 UTC
One other observation:
The crash only happens if I exit via the File->Quit menu or Ctrl-Q. It does not crash if I exit by closing the window via Ctrl-F4 or the mouse click.

Comment 9 Boleslaw Ciesielski 2023-09-23 05:24:25 UTC
This bug has been already fixed upstream on the "stable" 1.10.x branch in https://invent.kde.org/sdk/kdiff3/-/commit/5849ea6d7de19dcdb21534bdc63881e1d3cf274f. I verified locally that the fix works, but it is dependent on some previous commits, so it can't be easily patched to stock 1.10.5.

Comment 10 Vasiliy Glazov 2023-09-23 13:17:51 UTC
Thanks.
I will apply patch in next few days.

Comment 11 Vasiliy Glazov 2023-09-25 05:54:34 UTC
Seems problem solved in version 1.10.6.
Builds on the way.

Comment 12 Fedora Update System 2023-09-25 06:16:20 UTC
FEDORA-2023-2c227920b9 has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-2c227920b9

Comment 13 Fedora Update System 2023-09-25 06:16:20 UTC
FEDORA-2023-96f5ef6ceb has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-96f5ef6ceb

Comment 14 Boleslaw Ciesielski 2023-09-25 16:33:16 UTC
Thanks, kdiff3-1.10.6-1.fc38.x86_64 fixes this for me on Fedora 38.

Comment 15 Fedora Update System 2023-09-26 01:26:04 UTC
FEDORA-2023-96f5ef6ceb has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-96f5ef6ceb`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-96f5ef6ceb

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 16 Fedora Update System 2023-09-26 02:29:15 UTC
FEDORA-2023-2c227920b9 has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-2c227920b9`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-2c227920b9

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 17 Kim Bisgaard 2023-09-27 07:56:50 UTC
Thanks a lot!! :-)  I have tested the fix (new version) and it works as a charm.

Comment 18 Fedora Update System 2023-10-03 13:58:58 UTC
FEDORA-2023-96f5ef6ceb has been pushed to the Fedora 39 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 19 Fedora Update System 2023-10-04 02:33:42 UTC
FEDORA-2023-2c227920b9 has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.