Bug 708696

Summary: fldigi crashes when started
Product: [Fedora] Fedora Reporter: Philip Heron <phil>
Component: fldigiAssignee: Randy Berry <randyn3lrx>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 15CC: bob, randyn3lrx, riel
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: fldigi-3.21.35-1.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-29 22:03:18 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
patch to fix fldigi crash none

Description Philip Heron 2011-05-28 21:21:52 UTC
Just installed Fedora 15 fresh on my laptop, and fldigi is crashing immediately when started with the following message:

$ fldigi
E: getMenuItem: FIXME: could not find menu "C&ountries"

Caught signal 11
Aborting fldigi due to a fatal error.
Please report this to:   fldigi-devel.de
or file a bug report at: https://fedorahosted.org/fldigi/newticket

****** Stack trace:
fldigi[0x814520f]
fldigi[0x81453fc]
[0x647400]
fldigi[0x80b5b20]
fldigi[0x80b91bd]
fldigi[0x8059458]
/lib/libc.so.6(__libc_start_main+0xf3)[0x4b346513]
fldigi[0x805cabd]

****** Version information:
fldigi 3.21.7
Copyright (C) 2007-2010 Dave Freese, Stelios Bounanos, Leigh Klotz, Remi Chateauneu, and others.
License GPLv3+: GNU GPL version 3 or later <http://www.gnu.org/licenses/gpl-3.0.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

****** Build information:
Build information:
  built          : Thu Mar 24 11:37:47 UTC 2011 by mockbuild.fedoraproject.org on i386-redhat-linux-gnu for i386-redhat-linux-gnu

  configure flags: '--build=i386-redhat-linux-gnu' '--host=i386-redhat-linux-gnu' '--program-prefix=' '--disable-dependency-tracking' '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include' '--libdir=/usr/lib' '--libexecdir=/usr/libexec' '--localstatedir=/var' '--sharedstatedir=/var/lib' '--mandir=/usr/share/man' '--infodir=/usr/share/info' 'build_alias=i386-redhat-linux-gnu' 'host_alias=i386-redhat-linux-gnu' 'CXXFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables' 'CFLAGS=-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables'

  compiler       : gcc version 4.6.0 20110318 (Red Hat 4.6.0-0.14) (GCC) 

  compiler flags : -I$(srcdir) -I$(srcdir)/include -I$(srcdir)/irrxml -I$(srcdir)/fileselector -I$(srcdir)/xmlrpcpp -pthread -I/usr/include/freetype2 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT -D_REENTRANT -I/usr/include/libpng12 -I/usr/include/libxml2 -pipe -Wall -fexceptions -O2 -ffast-math -finline-functions -DNDEBUG

  linker flags   : -lportaudio -lm -lpthread -lfltk_images -lpng -lz -ljpeg -lfltk -lX11 -lsndfile -lsamplerate -lpulse-simple -lpulse -lhamlib -lm -lpng12 -lxmlrpc_server_abyss++ -ldl -lrt -lpthread

  libraries      : FLTK 1.1.10
                   libsamplerate 0.1.7
                   libsndfile 1.0.23
                   PortAudio 19
                   PulseAudio 0.9.22
                   Hamlib 1.2.12
                   XMLRPC-C 1.25.1


Runtime information:
  system         : Linux apollo.sanslogic.co.uk 2.6.38.6-27.fc15.i686.PAE #1 SMP Sun May 15 17:39:47 UTC 2011 i686

  libraries      : libsamplerate-0.1.7 (c) 2002-2008 Erik de Castro Lopo
                   libsndfile-1.0.24
                   PortAudio V19-devel (built May  5 2011 12:46:20) 1899
                   Pulseaudio 0.9.22
                   Hamlib 1.2.12

Comment 1 Philip Heron 2011-05-28 21:29:41 UTC
Some more information from GDB:

[Thread debugging using libthread_db enabled]
E: getMenuItem: FIXME: could not find menu "C&ountries"

Program received signal SIGSEGV, Segmentation fault.
create_fl_digi_main_primary () at dialogs/fl_digi.cxx:4635
4635			getMenuItem(COUNTRIES_MLABEL)->hide();
(gdb) bt
#0  create_fl_digi_main_primary () at dialogs/fl_digi.cxx:4635
#1  0x080b91bd in create_fl_digi_main (argc=1, argv=0xbffff434)
    at dialogs/fl_digi.cxx:5162
#2  0x08059458 in main (argc=1, argv=0xbffff434) at main.cxx:285

Comment 2 Rik van Riel 2011-06-03 21:59:35 UTC
These compile errors look related. Possibly a bug where fldigi isn't 64 bit clean.

  CXX    fldigi-fl_digi.o
dialogs/fl_digi.cxx: In function ‘void create_fl_digi_main_primary()’:
dialogs/fl_digi.cxx:4253:57: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
dialogs/fl_digi.cxx:4432:47: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]

Comment 3 Rik van Riel 2011-06-03 22:58:48 UTC
I tried the 32 bit version of fldigi and get the same crash.  Could've known if I had read comment #0 more carefully :)

Comment 4 Randy Berry 2011-06-05 01:25:50 UTC
Upstream is aware of the problem and working to fix it. This issue also surfaces in fldigi-3.21.9 (10?). There are threads on the fldigi-devel mailing list[1] about this issue.

1) https://lists.berlios.de/pipermail/fldigi-devel/2011-June/000649.html

Comment 5 Fedora Update System 2011-06-05 01:49:52 UTC
fldigi-3.21.10-3.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/fldigi-3.21.10-3.fc15

Comment 6 Randy Berry 2011-06-05 01:52:04 UTC
(In reply to comment #5)
> fldigi-3.21.10-3.fc15 has been submitted as an update for Fedora 15.
> https://admin.fedoraproject.org/updates/fldigi-3.21.10-3.fc15

This update may or may not fix the issue. Please try it and report any problems.
 Thanks. 
Randy N3LRX

Comment 7 Rik van Riel 2011-06-05 01:57:17 UTC
It doesn't.  Upstream 3.21.11 beta is still broken, too.

W1HKJ sent me an updated src/dialogs/fl_digi.cxx file to test. That one still shows the bug, too...

Strangely enough, his pre-built binary does work.

Comment 8 Fedora Update System 2011-06-07 04:40:52 UTC
Package fldigi-3.21.10-3.fc15:
* should fix your issue,
* was pushed to the Fedora 15 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing fldigi-3.21.10-3.fc15'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/fldigi-3.21.10-3.fc15
then log in and leave karma (feedback).

Comment 9 Rik van Riel 2011-06-07 12:35:42 UTC
I just tested fldigi-3.21.10-3.fc15 and can confirm it is still broken.

Comment 10 Rik van Riel 2011-06-11 14:43:12 UTC
Upstream fldigi 3.21.11 works when compiled on Fedora 15, but only when it is compiled with --disable-nls   (disables i18n).

Building fldigi on Fedora with --disable-nls may be a good stop-gap measure until the bug is fixed upstream.

Comment 11 Fedora Update System 2011-06-11 19:10:47 UTC
fldigi-3.21.11-2.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/fldigi-3.21.11-2.fc15

Comment 12 Rik van Riel 2011-06-12 01:07:36 UTC
Created attachment 504283 [details]
patch to fix fldigi crash

Kamal Mostafa created a patch that fixes the fldigi crash:

Small patch (attached) fixes the problem.

In a nutshell, the 'menu_' array in dialogs/fl_digi.cxx gets prematurely
terminated, because 'mode_info[MODE_ANALYSIS].name' ends up as an empty
string in the menu_ table.  That happens because the 'mode_info' array
in globals/globals.cxx uses an internationalized string to fill that
value _("Freq Analysis").  Something about the internationalization
runtime string juggling breaks down, leaving menu_ broken.

Simply using a regular string for "Freq Analysis" fixes all the damage.
For the record, I do not understand why this problem is only manifesting
now, however that fix seems easy and appropriate.

I'll apply this to fldigi 3.21.10 in Debian unstable.  Dave, if you
would be so kind, please apply it to your main tree as well.

73 de KA6MAL

 -Kamal

With luck the patch will be in fldigi upstream soon.

Comment 13 Fedora Update System 2011-06-12 23:27:40 UTC
fldigi-3.21.11-5.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/fldigi-3.21.11-5.fc15

Comment 14 Fedora Update System 2011-06-15 05:40:36 UTC
Package fldigi-3.21.11-2.fc15:
* should fix your issue,
* was pushed to the Fedora 15 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing fldigi-3.21.11-2.fc15'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/fldigi-3.21.11-2.fc15
then log in and leave karma (feedback).

Comment 15 Fedora Admin XMLRPC Client 2011-06-20 22:45:24 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 16 Fedora Update System 2011-06-29 22:03:11 UTC
fldigi-3.21.11-5.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 17 Fedora Update System 2011-09-09 06:33:09 UTC
fldigi-3.21.14-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/fldigi-3.21.14-1.fc15

Comment 18 Fedora Update System 2012-01-16 04:22:36 UTC
fldigi-3.21.35-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/fldigi-3.21.35-1.fc15

Comment 19 Fedora Update System 2012-01-31 21:59:22 UTC
fldigi-3.21.35-1.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.