I am having a crash in ntdll.dll when I stop a timer. This only happens in the debug build. Does anybody have any ideas (partial stack trace below)?
ntdll.dll!RtlpWaitOnCriticalSection()
ntdll.dll!RtlpEnterCriticalSetionContended()
ntdll.dll!_RtlEnterCriticalSection@4()
juce::CriticalSection::enter(void)
juce::GenericScopedLock<class juce::CriticalSection>::GenericScopedLock<class juce::CriticalSection>(class juce......
juce::Timer::stopTimer(void)
chkn
December 15, 2015, 1:31pm
2
Where is the crash? Looks more like a dead-lock. Do you use the CriticalSection i your class?
I am just calling timerStop which has it's own lock.
jules
December 15, 2015, 2:05pm
4
Most likely tour timer object is a dangling pointer.
Darrenw
December 15, 2015, 4:53pm
5
I just inherit the timer class and the first call in my destructor is stopTimer();
Darrenw
December 21, 2015, 5:00pm
6
Any other suggestions, like I said, this only happens in the debug build (could it be some build setting)?
jules
December 21, 2015, 5:12pm
7
Yes, and like I said, it'll be a dangling or null pointer.
alatar
December 22, 2015, 9:37am
8
No, I do not think its about the build settings. If often happens, that crashes only appear under certain circumstances, especially if pointers are involved. So you have to start by checking your code. Sucessively remove code (in debug mode), until the crash disappears. That should help you narrow down the root cause.