Segmentation fault on RHEL 7

Support for our DiffMerge utility.

Moderator: SourceGear

Post Reply
jjdmon21
Posts: 4
Joined: Fri Nov 15, 2019 1:10 pm

Segmentation fault on RHEL 7

Post by jjdmon21 » Fri Nov 15, 2019 1:19 pm

The package installed is: diffmerge-4.2.0.697.stable-1.x86_64.rpm on RHEL (workstation release 7.7). DiffMerge starts and I am able to open and compare two files, but as soon as I move the mouse over the toolbar it crashes with a segmentation fault almost immediately and every time. Is there any way to debug this?

Tonya
Posts: 862
Joined: Thu Jan 20, 2005 1:47 pm
Location: SourceGear

Re: Segmentation fault on RHEL 7

Post by Tonya » Mon Nov 18, 2019 10:13 am

Since RHEL 7.7 is based on Fedora 19 and the latest DiffMerge release 4.2 was built on Fedora 29 our recommendation is to download DiffMerge 4.1 and give it a try:

http://download.sourcegear.com/DiffMerg ... x86_64.rpm
http://download.sourcegear.com/DiffMerg ... 1.i686.rpm

Thanks,

Tonya

jjdmon21
Posts: 4
Joined: Fri Nov 15, 2019 1:10 pm

Re: Segmentation fault on RHEL 7

Post by jjdmon21 » Wed Dec 04, 2019 11:42 am

DiffMerge 4.2 was removed and 4.1 installed from the x86_64 package. Behavior is the same. I can open and compare two files but as soon as I move the mouse over the toolbar it dies with a segfault. I could try running it with strace or another diagnostic utility to get some idea where it is crashing or what it is trying to call. I'm not sure what options might be useful though.

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Re: Segmentation fault on RHEL 7

Post by jclausius » Thu Dec 05, 2019 9:36 am

As a test, I downloaded RHEL 7.7 Server and installed to a virtual machine, did some extra setup and then did an install with 'Server with GUI'. This installed the GNOME desktop. After changing the default runlevel and a reboot, I checked the desktop:

$ gnome-shell --version
GNOME Shell 3.28.3

Next, I downloaded the release DiffMerge (4.2.x) as well as the 4.1.0.534' 64-bit version above. I ran the following to install - "sudo rpm -i diffmerge-4.1.0.534.stable-1.x86_64.rpm". After installation, I was able to to diff two simple files (1 line each), moving the mouse over the toolbar or over the main views, clicking, etc. had no effect and didn't crash the tool.

After this test I ran, 'sudo rpm -ev diffmerge-4.1.0.534.stable-1.x86_64' to uninstall and 'sudo rpm -i diffmerge-4.2.0.697.stable-1.x86_64.rpm' to install the latest version of DiffMerge. Same test, and diffing two simple files had no effect, and using the mouse didn't crash the tool.

----
Are you running Gnome desktop 3.28.3?

Another test you may try is to temporarily rename the '~/.SourceGear DiffMerge' file, and try a test. Perhaps a setting there may be causing the problem.

Finally, a third option (after taking a look at the items above), try launching 'diffmerge' from a command prompt. You may get some warnings like the following:

- ** (diffmerge:3226): WARNING **: 00:23:04.022: invalid source position for vertical gradient

But if there's a segmentation fault or any other errors, that may be output to the command line window,
Attachments
file1.txt
(19 Bytes) Downloaded 773 times
file2.txt
(34 Bytes) Downloaded 829 times
Jeff Clausius
SourceGear

jjdmon21
Posts: 4
Joined: Fri Nov 15, 2019 1:10 pm

Re: Segmentation fault on RHEL 7

Post by jjdmon21 » Fri Dec 06, 2019 12:48 pm

Thanks for looking into this. The system is Red Hat Enterprise Linux Workstation release 7.7 and the desktop is KDE (4.14.8 from kinfocenter) in a vnc server (TigerVNC 1.8.0).

Moving the ~/.SourceGear DiffMerge file didn't make a difference. I've always used the command line to start it and the only message is "Segmentation fault (core dumped)".

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Re: Segmentation fault on RHEL 7

Post by jclausius » Fri Dec 06, 2019 1:43 pm

I cannot find any location on redhat's site where I can download 7.7 workstation.

I'll try switching to KDE on my Server install to see if that has any effect on DiffMerge. Will update once I've tested it out.
Jeff Clausius
SourceGear

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Re: Segmentation fault on RHEL 7

Post by jclausius » Fri Dec 06, 2019 2:06 pm

It still works (meaning DiffMerge didn't crash), but there is something definitely different here:

$] konsole --version
Qt: 4.8.7
KDE Development Platform: 4.14.8
Konsole: 2.10.5

----
I ran diffmerge with the two attached files again. This time the console spits out:

(diffmerge:4334): Gtk-CRITICAL **: 01:02:45.695: IA__gtk_widget_queue_draw: assertion 'GTK_IS_WIDGET (widget)' failed

----
I didn't see these critical errors with GNOME. It could be there's something in GTK that doesn't like something with the UI code. Have you tried a GNOME session on your workstation release to see if it also encounters a segmentation fault.

----

Can you see what GTK versions are installed? gtk2.x86_64 / gtk3.x86_64 are both installed on this test system.

Using [[ yum list installed | egrep '^gtk(2|3)\.' ]]:
gtk2.x86_64 2.24.31-1.el7
gtk3.x86_64 3.22.30-3.el7

OR

Using [[ rpm -qa | egrep '^gtk(2|3)' ]]:
gtk2-2.24.31-1.el7.x86_64
gtk2-immodule-xim-2.24.31-1.el7.x86_64
gtk3-3.22.30-3.el7.x86_64
gtk3-immodule-xim-3.22.30-3.el7.x86_64

Could it be related to that?
Jeff Clausius
SourceGear

jjdmon21
Posts: 4
Joined: Fri Nov 15, 2019 1:10 pm

Re: Segmentation fault on RHEL 7

Post by jjdmon21 » Mon Dec 09, 2019 2:54 pm

When I switched to Gnome I was able to run DiffMerge and it didn't crash. I could even click on controls in the toolbar which I wasn't able to do before. Then I switched back to KDE and it is still working, although I do see the same critical assertion failure messages from GTK. We switched back to DiffMerge 4.2 and it is still working, with KDE.

This is what we have for GTK versions:

gtk2-2.24.31-1.el7.x86_64
gtk3-immodule-xim-3.22.30-3.el7.x86_64
gtk2-devel-2.24.31-1.el7.x86_64
gtk3-devel-3.22.30-3.el7.x86_64
gtk2-devel-docs-2.24.31-1.el7.x86_64
gtk2-immodule-xim-2.24.31-1.el7.x86_64
gtk3-3.22.30-3.el7.x86_64

Is it possible that running with Gnome initialized something that failed with KDE and now that it ran once it works in either environment?

jclausius
Posts: 3702
Joined: Tue Dec 16, 2003 1:17 pm
Location: SourceGear
Contact:

Re: Segmentation fault on RHEL 7

Post by jclausius » Tue Dec 10, 2019 8:37 am

I honestly couldn't tell you what is going on. My guess is GNOME installs some other small Gtk dependent library for toolbars (buttons, images, etc.) and/or mouse events that didn't get installed with KDE, and switching it installed that missing component.

Just glad DiffMerge is now running on your system.
Jeff Clausius
SourceGear

Post Reply