On 07/25/2011 06:52 AM, joerg-cyril.hoe...@t-systems.com wrote:
I spent several evenings reviewing the code, here are my findings.
Thanks! Lots of good comments here. I've made notes about your
suggestions to come back to later. Some specific responses follow...
- Some more comments are nee
Hi,
I spent several evenings reviewing the code, here are my findings.
The Good
+ You did it!
+ outer layer (wave*) uses hwave, inner layer uses device parameter
(except WINMM_Pause/Reset which break this separation).
+ ValidateAndLock pattern
+ Invoking driver callbacks outside of critical
Andrew Eikum writes:
> +static MMRESULT WINMM_SendDeviceThreadMessage(UINT msg, WPARAM wp)
> +{
> +DWORD wait;
> +MMRESULT res;
> +
> +EnterCriticalSection(&g_devthread_lock);
> +
> +if(!PostThreadMessageW(g_devthread_id, msg, wp, (DWORD_PTR)&res)){
> +ERR("PostThreadMessa