I've been getting regular but hard to repeat crashes so I let my software go in debug mode and found the attached call stack. I'm not sure if it is something I am doing or a slight bug in UPP that only I see because I run a function that looks like this
void OpenWind::OnTimer()
{
// update the UI
bool b = AreWeFree();
m_pSaveButton->Enable(b);
m_pNewButton->Enable(b);
m_pEditButton->Enable(b);
::SetTimeCallback(1000,THISBACK(OnTimer));
}
in order to update the state of my toolbar buttons. As you can see, OnTimer is called every second for the whole time my software is running. The crash happens when I am running other threads concurrently. Am only posting this here because the call stack consists entirely of UPP code.
Nick
Well, my first guess would be that in some other thread you forgot to GuiLock.
Maybe it would be interesting to post here call stacks of all threads (in theide, you can easily achieve that - you can switch threads and you can also put the callstack into the clipboard).
Note:
::SetTimeCallback(-1000,THISBACK(OnTimer));
Negative time would repeat the callback, so there would be no need to reactivate it in OnTimer.