Ignore:
Timestamp:
Apr 6, 2000, 2:04:29 PM (25 years ago)
Author:
sandervl
Message:

callback (msg) fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/winmm/dwaveout.cpp

    r3320 r3326  
    1 /* $Id: dwaveout.cpp,v 1.19 2000-04-05 18:39:23 sandervl Exp $ */
     1/* $Id: dwaveout.cpp,v 1.20 2000-04-06 12:04:29 sandervl Exp $ */
    22
    33/*
     
    376376            memset(MixBuffer[i].pBuffer, 0, MixBuffer[i].ulBufferLength);
    377377        }
    378         dprintf(("Dart opened, bufsize = %d\n", MixBuffer[i].ulBufferLength));
     378        dprintf(("Dart opened, bufsize = %d\n", MixBuffer[0].ulBufferLength));
    379379
    380380        wavehdr     = pwh;
     
    477477  wmutex->enter(VMUTEX_WAIT_FOREVER);
    478478  while(wavehdr) {
    479     wavehdr->dwFlags |= WHDR_DONE;
    480     wmutex->leave();
    481     if(mthdCallback) {
    482         callback((ULONG)this, WOM_DONE, dwInstance, (ULONG)wavehdr, 0);
    483     }
    484     else {
    485         if(hwndCallback)
    486             PostMessageA(hwndCallback, WOM_DONE, (ULONG)wavehdr, 0);
    487     }
    488     wmutex->enter(VMUTEX_WAIT_FOREVER);
    489     wavehdr = wavehdr->lpNext;
     479        wavehdr->dwFlags |= WHDR_DONE;
     480        wmutex->leave();
     481        if(mthdCallback) {
     482                callback((ULONG)this, WOM_DONE, dwInstance, (ULONG)wavehdr, 0);
     483        }
     484        else
     485        if(hwndCallback) {
     486                dprintf(("Callback (msg) for buffer %x", wavehdr));
     487                PostMessageA(hwndCallback, WOM_DONE, (WPARAM)this, (ULONG)wavehdr);
     488        }
     489        wmutex->enter(VMUTEX_WAIT_FOREVER);
     490        wavehdr = wavehdr->lpNext;
    490491  }
    491492  wavehdr = NULL;
     
    649650        }
    650651        else
    651             if(hwndCallback)
    652                 PostMessageA(hwndCallback, WOM_DONE, (ULONG)whdr, 0);
     652        if(hwndCallback) {
     653                dprintf(("Callback (msg) for buffer %x", whdr));
     654                PostMessageA(hwndCallback, WOM_DONE, (WPARAM)this, (ULONG)whdr);
     655        }
    653656
    654657        wmutex->enter(VMUTEX_WAIT_FOREVER);
Note: See TracChangeset for help on using the changeset viewer.