View Issue Details

IDProjectCategoryView StatusLast Update
0002240Ham Radio DeluxeBugpublic2017-09-18 00:08
ReporterPD9FER 
Assigned ToK7ZCZ 
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Product Version 
Target VersionFixed in Version6.4.0.787 
Summary0002240: Adding 24th satellite craches satellite tracking app
Description(Customer comment)
 With radio connected or disconnected, from a clean install with the Roaming data deleted, adding 23 satellites works fine, but adding the 24th results in "Failed to create empty document" followed by a crash.

 I have build 777 running on one computer, and 780 on another. Same behavior crashes both.
Steps To ReproduceRun HRD Sattrack
 Keep adding satellites until you reach number 24.
 The program will crash.
Additional Informationhttps://support.ham-radio-deluxe.com/scp/tickets.php?id=11647

I replicated and have also a Minidump. wich is too big for upload in Mantis
It is at Google Drive in the HRD Software root folder
name: SatTrack_20170908_092839.rar
TagsNo tags attached.
ModuleSatellite Tracking
Sub-ModuleFunctional
TestingNot Started

Relationships

Activities

K7ZCZ

2017-09-08 12:11

viewer   ~0004149

Thanks for the minidump.

The crashing call stack is below. It shows that we tried to create a new document (a data structure that, in this app, holds the satellite information and its track, and so on ...) but failed to do so. The code doesn't check for failure, and de-references the null pointer that indicated failure. It crashes at that point.

> HRDSatTrack.exe!CSatTrackApp::OpenTrack(const ATL::CStringT<wchar_t,StrTraitMFC<wchar_t,ATL::ChTraitsCRT<wchar_t> > > & strSatellite={...}) Line 1062 C++
     HRDSatTrack.exe!_AfxDispatchCmdMsg(CCmdTarget * pTarget=0x0652e018, unsigned int nID=31118, int nCode=0, void (void) * pfn=0x0015c9c0, void * pExtra=0x00000000, unsigned int nSig=60, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000) Line 92 C++
     HRDSatTrack.exe!CCmdTarget::OnCmdMsg(unsigned int nID=31118, int nCode=0, void * pExtra=0x00000000, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000) Line 373 C++
     HRDSatTrack.exe!CFrameWnd::OnCmdMsg(unsigned int nID=31118, int nCode=0, void * pExtra=0x00000000, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000) Line 984 C++
     HRDSatTrack.exe!CMDIFrameWnd::OnCmdMsg(unsigned int nID=31118, int nCode=0, void * pExtra=0x00000000, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000) Line 78 C++
     HRDSatTrack.exe!CXTPMDIFrameWnd::OnCmdMsg(unsigned int nID=31118, int nCode=0, void * pExtra=0x00000000, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000) Line 282 C++
     HRDSatTrack.exe!CWnd::OnCommand(unsigned int wParam=31118, long lParam=0) Line 2784 C++
     HRDSatTrack.exe!CFrameWnd::OnCommand(unsigned int wParam=31118, long lParam=0) Line 383 C++
     HRDSatTrack.exe!CMDIFrameWnd::OnCommand(unsigned int wParam=31118, long lParam=0) Line 47 C++
     HRDSatTrack.exe!CWnd::OnWndMsg(unsigned int message=273, unsigned int wParam=31118, long lParam=0, long * pResult=0x011ff610) Line 2108 C++
     HRDSatTrack.exe!CXTPCommandBarsSiteBase<CMDIFrameWnd>::OnWndMsg(unsigned int message=273, unsigned int wParam=31118, long lParam=0, long * pResult=0x011ff610) Line 190 C++
     HRDSatTrack.exe!CWnd::WindowProc(unsigned int message=273, unsigned int wParam=31118, long lParam=0) Line 2094 C++
     HRDSatTrack.exe!AfxCallWndProc(CWnd * pWnd=0x0652e018, HWND__ * hWnd=0x000605d2, unsigned int nMsg=273, unsigned int wParam=31118, long lParam=0) Line 285 C++
     HRDSatTrack.exe!AfxWndProc(HWND__ * hWnd=0x000605d2, unsigned int nMsg=273, unsigned int wParam=31118, long lParam=0) Line 434 C++
     user32.dll!_InternalCallWinProc@20() Unknown
     user32.dll!_UserCallWinProcCheckWow@32() Unknown
     user32.dll!_CallWindowProcAorW@24() Unknown
     user32.dll!_CallWindowProcW@20() Unknown
     HRDSatTrack.exe!CXTPHookManager::HookWndProc(HWND__ * hWnd=0x0023dffd, unsigned int message=273, unsigned int wParam=31118, long lParam=0) Line 267 C++
     user32.dll!_InternalCallWinProc@20() Unknown
     user32.dll!_UserCallWinProcCheckWow@32() Unknown
     user32.dll!_SendMessageWorker@24() Unknown
     user32.dll!_SendMessageW@16() Unknown
     HRDSatTrack.exe!CXTPControl::OnExecute() Line 914 C++
     HRDSatTrack.exe!CXTPControlButton::OnLButtonUp(CPoint __formal={...}) Line 52 C++
     HRDSatTrack.exe!CWnd::OnWndMsg(unsigned int message, unsigned int wParam=72, long lParam=391, long * pResult=0xadaaf677) Line 2473 C++
     HRDSatTrack.exe!CXTPCommandBar::OnWndMsg(unsigned int message=514, unsigned int wParam=0, long lParam=25624648, long * pResult=0x011ffa40) Line 2416 C++
     HRDSatTrack.exe!CWnd::WindowProc(unsigned int message=514, unsigned int wParam=0, long lParam=25624648) Line 2094 C++
     HRDSatTrack.exe!AfxCallWndProc(CWnd * pWnd=0x7fffffff, HWND__ * hWnd=0x00012858, unsigned int nMsg=514, unsigned int wParam=0, long lParam=25624648) Line 285 C++
     HRDSatTrack.exe!AfxWndProc(HWND__ * hWnd=0x00012858, unsigned int nMsg=514, unsigned int wParam=0, long lParam=25624648) Line 434 C++
     user32.dll!_InternalCallWinProc@20() Unknown
     user32.dll!_UserCallWinProcCheckWow@32() Unknown
     user32.dll!_CallWindowProcAorW@24() Unknown
     user32.dll!_CallWindowProcW@20() Unknown
     HRDSatTrack.exe!CXTPHookManager::HookWndProc(HWND__ * hWnd=0x0023dffd, unsigned int message=514, unsigned int wParam=0, long lParam=25624648) Line 267 C++
     user32.dll!_InternalCallWinProc@20() Unknown
     user32.dll!_UserCallWinProcCheckWow@32() Unknown
     user32.dll!_DispatchMessageWorker@8() Unknown
     user32.dll!_DispatchMessageW@4() Unknown
     HRDSatTrack.exe!AfxInternalPumpMessage() Line 183 C++
     HRDSatTrack.exe!AfxWinMain(HINSTANCE__ * hInstance=0x00000000, HINSTANCE__ * hPrevInstance=0x00000020, wchar_t * lpCmdLine=0x00000001, int nCmdShow=18873784) Line 47 C++
     HRDSatTrack.exe!__tmainCRTStartup() Line 618 C
     kernel32.dll!@BaseThreadInitThunk@12() Unknown
     ntdll.dll!___RtlUserThreadStart@8() Unknown
     ntdll.dll!__RtlUserThreadStart@8() Unknown

K7ZCZ

2017-09-08 14:45

viewer   ~0004150

I've added code to handle this specific OOM error. When low on memory, an app can misbehave in many different ways, so this is likely not completely fixed -- but we can keep chasing them down.

https://hrdsoftware.visualstudio.com/HRD/_versionControl/changeset/3838

WA9PIE

2017-09-18 00:08

administrator   ~0004205

Closed as part of the 6.4.0.787 release.

Issue History

Date Modified Username Field Change
2017-09-08 04:41 PD9FER New Issue
2017-09-08 12:11 K7ZCZ Note Added: 0004149
2017-09-08 14:45 K7ZCZ Assigned To => K7ZCZ
2017-09-08 14:45 K7ZCZ Status new => resolved
2017-09-08 14:45 K7ZCZ Resolution open => fixed
2017-09-08 14:45 K7ZCZ Testing => Not Started
2017-09-08 14:45 K7ZCZ Note Added: 0004150
2017-09-14 19:19 K7ZCZ Project 1 - Backlog => 3 - Current Dev List
2017-09-14 19:23 K7ZCZ Fixed in Version => 6.4.0.787
2017-09-18 00:06 WA9PIE Project 3 - Current Dev List => Ham Radio Deluxe
2017-09-18 00:08 WA9PIE Note Added: 0004205
2017-09-18 00:08 WA9PIE Status resolved => closed