[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#719523: fldigi: segfault on start-up (active_modem == NULL)



Package: fldigi
Version: 3.21.72-1
Severity: important
Tags: upstream

After updating fldigi to 3.21.72 (or maybe this first appeared in .71) with
my $HOME/.fldigi/ dir from the previous version still present, fldigi
segfaults at start-up.  The "Fldigi configuration wizard" dialog pops up,
then the following crash occurs when the waterfall init code tries to
dereference global 'active_modem' before it's been set.

The segfault doesn't happen when starting with no $HOME/.flgidi/ dir;  It's
likely that it only occurs with (some particular?) rig controls configured.


Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffe773e700 (LWP 21724)]
0x000000000064a9a3 in modem::set_reverse (this=0x0, on=false)
    at trx/modem.cxx:264
264		reverse = on ^ (!wf->USB());

(gdb) bt
#0  0x000000000064a9a3 in modem::set_reverse (this=0x0, on=false)
    at trx/modem.cxx:264
#1  0x000000000065c8ae in waterfall::USB (this=0xb607b0, b=false)
    at waterfall/waterfall.cxx:1548
#2  0x00000000005d5589 in rigCAT_loop (args=0x0) at rigcontrol/rigio.cxx:1283
#3  0x00007ffff7995f8e in start_thread (arg=0x7fffe773e700)
    at pthread_create.c:311
#4  0x00007ffff55c1e1d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

(gdb) up
#1  0x000000000065c8ae in waterfall::USB (this=0xb607b0, b=false)
    at waterfall/waterfall.cxx:1548
1548		active_modem->set_reverse(reverse);

(gdb) l
1543	
1544	void waterfall::USB(bool b) {
1545		if (wfdisp->USB() == b)
1546			return;
1547		wfdisp->USB(b);
1548		active_modem->set_reverse(reverse);
1549		REQ(&viewer_redraw);
1550	}
1551	
1552	bool waterfall::USB() {

(gdb) p active_modem
$1 = (modem *) 0x0


Reply to: