View Issue Details

IDProjectCategoryView StatusLast Update
00026452 - Next Dev List (Holding Area)Bugpublic2019-06-22 16:45
Reporterg3ucqAssigned Tog3ucq 
PrioritynormalSeveritymajorReproducibilityunable to reproduce
Status resolvedResolutionfixed 
Summary0002645: DigitalMaster created a minidump as DM780 was closing
DescriptionDigitalMaster created a minidump as DM780 was closing.
Steps To ReproduceI have not had a minidump created before as a module was Closing.
TagsNo tags attached.
ModuleDM780
Sub-Module(select)
TestingNot Started

Activities

g3ucq

2018-03-30 15:44

updater  

G3UCQ_DigitalMaster_20180330_203940.zip (81,971 bytes)

K7ZCZ

2018-04-01 17:03

administrator   ~0004620

Call stack is given below. Note that we don't build HRDInterface001 with symbols, so I've fixed that.

The problem here is the logging window. A thread is running and wants to send information to the logging window, but the logging window has shut down. There are some weak attempts at preventing message work in this channel during shutdown, but they don't work because they create race conditions. A re-write of the logging code should be considered to address this design flaw, and at least a few others -- see Mantis 2050.




0:006> kp
  *** Stack trace for last set context - .thread/.cxr resets it
 # ChildEBP RetAddr
00 0ed3b314 61d449f6 HRDInterface001!CHRDInterface001App::SendLogfileMessage+0x1be
01 0ed3b348 61d42e76 HRDInterface001!CHRDInterface001App::AddError+0x106
02 0ed3b65c 00937717 HRDInterface001!HRDInterfaceConnect+0x606
03 0ed3b6e4 0093ab5b Digital_Master!CBackgroundProcessingThread::HRDData(struct HWND__ * hWnd = 0x001e0a88, struct RADIO_PANE_DATA * pData = 0x047305e0)+0x257 [c:\ham radio\digital master\digital master\backgroundprocessingthreadhrd.cpp @ 226]
04 0ed3f800 0093a271 Digital_Master!CBackgroundProcessingThread::ProcessData(class CBkgPacket * pPkt = 0x0a9d5dd0)+0x88b [c:\ham radio\digital master\digital master\backgroundprocessingthreadpacket.cpp @ 1493]
05 0ed3f838 00adf095 Digital_Master!CBackgroundProcessingThread::DoWork(void)+0xd1 [c:\ham radio\digital master\digital master\backgroundprocessingthreadpacket.cpp @ 1069]
06 0ed3f860 00adf126 Digital_Master!CThinThread::Run(void)+0x85 [c:\ham radio\digital master\digital master\thinthread.cpp @ 186]
07 0ed3f89c 00c4850a Digital_Master!CThinThread::Start(void * pv = 0x010e5ca8)+0x46 [c:\ham radio\digital master\digital master\thinthread.cpp @ 236]
08 0ed3f8d4 00c48632 Digital_Master!_callthreadstartex(void)+0x1b [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 376]
09 0ed3f8e0 75a68654 Digital_Master!_threadstartex(void * ptd = <Value unavailable error>)+0x7c [f:\dd\vctools\crt\crtw32\startup\threadex.c @ 354]
0a 0ed3f8f4 77924a77 kernel32!BaseThreadInitThunk+0x24
0b 0ed3f93c 77924a47 ntdll!__RtlUserThreadStart+0x2f
0c 0ed3f94c 00000000 ntdll!_RtlUserThreadStart+0x1b

g3ucq

2019-03-07 04:40

updater   ~0007618

No minidumps created now.

K7ZCZ

2019-06-06 13:18

administrator   ~0007999

John, is this reproducing in current builds? If not, I'd like to close it.

g3ucq

2019-06-06 13:37

updater   ~0008007

Mike, I have not had a minidump from DM780 or any other module for months.

K7ZCZ

2019-06-06 17:22

administrator   ~0008016

Thanks. That's great news! :)

Issue History

Date Modified Username Field Change
2018-03-30 15:44 g3ucq New Issue
2018-03-30 15:44 g3ucq File Added: G3UCQ_DigitalMaster_20180330_203940.zip
2018-04-01 17:03 K7ZCZ Note Added: 0004620
2019-03-07 04:40 g3ucq Note Added: 0007618
2019-06-06 13:18 K7ZCZ Assigned To => g3ucq
2019-06-06 13:18 K7ZCZ Status new => assigned
2019-06-06 13:18 K7ZCZ Note Added: 0007999
2019-06-06 13:37 g3ucq Note Added: 0008007
2019-06-06 17:22 K7ZCZ Note Added: 0008016
2019-06-06 17:22 K7ZCZ Status assigned => resolved
2019-06-06 17:22 K7ZCZ Resolution open => fixed
2019-06-06 17:22 K7ZCZ Testing => Not Started
2019-06-22 16:39 WA9PIE Project 1 - Backlog => 3 - Current Dev List
2019-06-22 16:45 WA9PIE Project 3 - Current Dev List => 2 - Next Dev List (Holding Area)