View Issue Details

IDProjectCategoryView StatusLast Update
0003061Ham Radio DeluxeBugpublic2019-02-24 15:12
ReporterWA9PIEAssigned ToK7ZCZ 
PrioritynormalSeveritycrashReproducibilityrandom
Status closedResolutionfixed 
Product Version6.5.0.171 
Target VersionFixed in Version6.5.0.196 
Summary0003061: Mini-dump generated after repeatedly changing satellites
DescriptionWhile running the satellite app... connected to the FT-991A, I was repeatedly changing the satellite using the dropdown in pane that shows the world view with the satellite's path on it.
Steps To ReproduceAll I can say is... I was repeatedly changing satellites from the drop-down and the program crashed with a mini-dump file. I was unable to cause it to happen again.
TagsNo tags attached.
ModuleSatellite Tracking
Sub-ModuleGeneral
Testing Beta Successful

Relationships

related to 0003131 new 3 - Current Dev List Satellite Tracker can hang when redrawing world map pane 

Activities

WA9PIE

2019-01-11 23:21

administrator   ~0006972

Dump file posted here: \Team Drives\HRD Software\Dumps\Mantis 3061

WA9PIE

2019-01-27 08:39

administrator   ~0007086

I just added another dump file after trying to repeat this.

K7ZCZ

2019-01-28 10:56

manager   ~0007099

I'm not able to reproduce this directly. Here's what I tried:


1) Start up Satellite Tracker
2) On the "Satellite Definitions" tab, use the "Enable all" toolbar button to mark all satellites
3) Use the "Next Passes" button on the main toolbar
4) In the resulting "Passes:1KUNS-PF" tab, mark the "World Map" toolbar button to display the world map tracking view
5) In the "Passes" tool bar, mark the "Only" radio button
6) Repeatedly select different satellites from the dropdown in the "Passes" tool bar, next to the "Only" radio button

I can get the app to hang by doing those steps, though. It'll be a different cause than the crash, so I opened a new Mantis issue for it.

K7ZCZ

2019-01-28 11:03

manager   ~0007100

The 20190123 dump is from build 187 of the product. The crash is because of a stack overflow; here's a truncated stack dump:


:
:
:
6b 008e2444 00c3dc7b f7186639 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
6c 008e6638 00c3ddf9 f71866b9 10039780 08ecba28 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
6d 008e66b8 00c3dc7b f718a8ad 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
6e 008ea8ac 00c3ddf9 f718a92d 10039780 08ecb600 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
6f 008ea92c 00c3dc7b f718eb21 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
70 008eeb20 00c3ddf9 f718eba1 10039780 08ecb718 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
71 008eeba0 00c3dc7b f7192d95 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
72 008f2d94 00c3ddf9 f7192e15 10039780 08ecb558 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
73 008f2e14 00c3dc7b f7197009 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
74 008f7008 00c3ddf9 f7197089 10039780 08ecb558 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
75 008f7088 00c3dc7b f719b27d 08cc9378 00000000 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
76 008fb27c 00c3ddf9 f719b2fd 10039780 08ecba28 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
77 008fb2fc 00c3dc7b f719f4f1 04641690 08cc8d98 HRDSatTrack!CPaneNextPasses::Tickle+0x129 [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1456] 
78 008ff4f0 00c7b877 00000064 08cc8d98 00000001 HRDSatTrack!CPaneNextPasses::Refresh+0x281b [c:\hrd65\satellites\sattrack\panenextpasses.cpp @ 1363] 
79 008ff50c 00c741ca 08cc8d98 f719f52d 08cc8d98 HRDSatTrack!CSatTrackView::Satellite+0x2b7 [c:\hrd65\satellites\sattrack\sattrackview.cpp @ 1697] 
7a 008ff52c 00d1c8ff 046416a0 008ff5f8 00000064 HRDSatTrack!CSatTrackFrame::OnSatellite+0x4a [c:\hrd65\satellites\sattrack\sattrackfrm.cpp @ 655] 
7b 008ff548 00d1c6ca 08cc8d98 00000073 00000064 HRDSatTrack!_AfxDispatchCmdMsg+0xa2 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\cmdtarg.cpp @ 108] 
7c 008ff580 00d2d86e 00000073 004e0064 008ff5e8 HRDSatTrack!CCmdTarget::OnCmdMsg+0x154 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\cmdtarg.cpp @ 372] 
7d 008ff5c4 00ea5d02 00000073 004e0064 008ff5e8 HRDSatTrack!CFrameWnd::OnCmdMsg+0x5e [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\winfrm.cpp @ 984] 
7e 008ff5f0 00ea5fa2 00000000 00000064 008ff610 HRDSatTrack!CXTPControl::NotifySite+0x92 [c:\program files (x86)\codejock software\mfc\xtreme toolkitpro v18.6.0\source\commandbars\xtpcontrol.cpp @ 497] 
7f (Inline) -------- -------- -------- -------- HRDSatTrack!NotifyExecute+0x11 [c:\program files (x86)\codejock software\mfc\xtreme toolkitpro v18.6.0\source\commandbars\xtpcontrol.cpp @ 333] 
80 008ff628 00f9266b 00f92650 00d165d0 00000000 HRDSatTrack!CXTPControl::OnExecute+0x172 [c:\program files (x86)\codejock software\mfc\xtreme toolkitpro v18.6.0\source\commandbars\xtpcontrol.cpp @ 575] 
81 008ff630 00d165d0 00000000 0000005a 00000160 HRDSatTrack!CXTPControlComboBoxList::OnLButtonUp+0x1b [c:\program files (x86)\codejock software\mfc\xtreme toolkitpro v18.6.0\source\commandbars\controls\combobox\xtpcontrolcomboboxlist.cpp @ 196] 
82 008ff704 00e9f3fb 00000202 00000000 0160005a HRDSatTrack!CWnd::OnWndMsg+0x57c [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 2698] 
83 008ff720 00d1795c 00000202 00000000 0160005a HRDSatTrack!CXTPCommandBar::OnWndMsg+0x2b [c:\program files (x86)\codejock software\mfc\xtreme toolkitpro v18.6.0\source\commandbars\xtpcommandbar.cpp @ 2621] 
84 008ff744 00d12b28 00000202 00000000 0160005a HRDSatTrack!CWnd::WindowProc+0x2d [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 2099] 
85 008ff7b8 00d132e3 08cd9178 00030994 00000202 HRDSatTrack!AfxCallWndProc+0xc6 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 268] 
86 008ff7d8 769e635b 00030994 00000202 00000000 HRDSatTrack!AfxWndProc+0x34 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\wincore.cpp @ 417] 
87 008ff804 769d729c 00d132af 00030994 00000202 user32!_InternalCallWinProc+0x2b
88 008ff8e8 769d63db 00d132af 00000000 00000202 user32!UserCallWinProcCheckWow+0x3ac
89 008ff95c 769d61b0 00000202 008ff994 00d21edb user32!DispatchMessageWorker+0x21b
8a 008ff968 00d21edb 0006d788 00000000 00d2235e user32!DispatchMessageW+0x10
8b 008ff978 00d223cc 011c8890 00d39825 ffffffff HRDSatTrack!AfxInternalPumpMessage+0x3e [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp @ 183] 
8c 008ff994 01057893 00000000 01408824 00798000 HRDSatTrack!CWinThread::Run+0x69 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\thrdcore.cpp @ 629] 
8d 008ff9ac 00e6ae7b 00c00000 00000000 00061eec HRDSatTrack!AfxWinMain+0x93 [d:\agent\_work\3\s\src\vctools\vc7libs\ship\atlmfc\src\mfc\winmain.cpp @ 61] 
8e (Inline) -------- -------- -------- -------- HRDSatTrack!invoke_main+0x1a [d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 118] 
8f 008ff9f8 7545fe09 00798000 7545fdf0 008ffa64 HRDSatTrack!__scrt_common_main_seh+0xf8 [d:\agent\_work\2\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl @ 288] 
90 008ffa08 7776662d 00798000 ff57200c 00000000 kernel32!BaseThreadInitThunk+0x19
91 008ffa64 777665fd ffffffff 777851a3 00000000 ntdll!__RtlUserThreadStart+0x2f
92 008ffa74 00000000 00e6aeff 00798000 00000000 ntdll!_RtlUserThreadStart+0x1b

K7ZCZ

2019-01-28 11:04

manager   ~0007101

The 20190112 dump is from build 171, but shows the same callstack at the crash.

K7ZCZ

2019-01-28 13:27

manager   ~0007105

The stack overflow is caused by two functions infinitely recurring; Tickle() and Refresh(). Refresh does some work and unconditionally calls Tickle(). Tickle may or may not call Refresh, but Tickle does call refresh, there's no signal to Refresh that it shouldn't do its call back to Tickle.

I've broken this fatal embrace naively; certainly, it'll avoid the crash. It might leave something unpainted or half-baked, but we can cross that bug when we come to it... we can't do so now, since we'd just crash instead.

K7ZCZ

2019-01-28 13:50

manager   ~0007106

fixed with this checkin:
https://hrdsoftware.visualstudio.com/HRD/_versionControl/changeset/4770

WA9PIE

2019-02-01 20:07

administrator   ~0007216

Validated

Issue History

Date Modified Username Field Change
2019-01-11 23:19 WA9PIE New Issue
2019-01-11 23:21 WA9PIE Note Added: 0006972
2019-01-27 08:39 WA9PIE Note Added: 0007086
2019-01-27 08:40 WA9PIE Assigned To => K7ZCZ
2019-01-27 08:40 WA9PIE Status new => assigned
2019-01-27 08:40 WA9PIE Steps to Reproduce Updated View Revisions
2019-01-28 10:56 K7ZCZ Note Added: 0007099
2019-01-28 11:03 K7ZCZ Note Added: 0007100
2019-01-28 11:04 K7ZCZ Note Added: 0007101
2019-01-28 11:05 K7ZCZ Relationship added related to 0003131
2019-01-28 13:27 K7ZCZ Note Added: 0007105
2019-01-28 13:50 K7ZCZ Status assigned => resolved
2019-01-28 13:50 K7ZCZ Resolution open => fixed
2019-01-28 13:50 K7ZCZ Note Added: 0007106
2019-01-29 22:47 K7ZCZ Fixed in Version => 6.5.0.188
2019-02-01 20:07 WA9PIE Status resolved => closed
2019-02-01 20:07 WA9PIE Testing Not Started => Beta Successful
2019-02-01 20:07 WA9PIE Note Added: 0007216
2019-02-24 14:40 WA9PIE Fixed in Version 6.5.0.188 => 6.5.0.196
2019-02-24 15:12 WA9PIE Project 3 - Current Dev List => Ham Radio Deluxe