https://bugs.winehq.org/show_bug.cgi?id=51683
--- Comment #3 from deltaconnected@gmail.com --- https://www.deltaconnected.com/arcdps/
I put data I read out of the main game thread into a timerqueue to process to avoid stalling the main game thread (and causing stuttering) -- CreateTimerQueueTimer(&ev->timer, 0, (WAITORTIMERCALLBACK)procengineevent, ev, 0, 0, WT_EXECUTEDEFAULT). In the callback -- DeleteTimerQueueTimer(0, ev->timer, 0). Changing DueTime from 0 to 10 in CreateTimerQueueTimer in a DLL I gave my Wine users seems to have entirely eliminated the crashing with RtlDeleteTimer in the stack trace. Windows doesn't experience this behaviour.