Module: wine Branch: master Commit: 23bb112b10cc788eb7fbb9c433b89531641764ac URL: http://source.winehq.org/git/wine.git/?a=commit;h=23bb112b10cc788eb7fbb9c433...
Author: Ken Thomases ken@codeweavers.com Date: Thu Dec 21 03:46:55 2006 -0600
winecoreaudio: Control the fprintf's by the Wine debug channel on/off settings.
---
dlls/winmm/winecoreaudio/audio.c | 23 +++++++++++++++++------ 1 files changed, 17 insertions(+), 6 deletions(-)
diff --git a/dlls/winmm/winecoreaudio/audio.c b/dlls/winmm/winecoreaudio/audio.c index 181e502..b971efe 100644 --- a/dlls/winmm/winecoreaudio/audio.c +++ b/dlls/winmm/winecoreaudio/audio.c @@ -148,6 +148,10 @@ typedef struct { DWORD tickCountMS; /* time in MS of last AudioUnit callback */
pthread_mutex_t lock; /* synchronization stuff */ + + BOOL trace_on; + BOOL warn_on; + BOOL err_on; } WINE_WAVEOUT;
typedef struct { @@ -721,7 +725,11 @@ static DWORD wodOpen(WORD wDevID, LPWAVE
wwo->dwPlayedTotal = 0; wwo->dwWrittenTotal = 0; - + + wwo->trace_on = TRACE_ON(wave); + wwo->warn_on = WARN_ON(wave); + wwo->err_on = ERR_ON(wave); + pthread_mutex_unlock(&wwo->lock);
retval = wodNotifyClient(wwo, WOM_OPEN, 0L, 0L); @@ -846,7 +854,7 @@ static void wodHelper_BeginWaveHdr(WINE_ { wwo->state = WINE_WS_STOPPED; status = AudioOutputUnitStop(wwo->audioUnit); - if (status) + if (status && wwo->err_on) fprintf(stderr, "err:winecoreaudio:wodHelper_BeginWaveHdr AudioOutputUnitStop return %c%c%c%c\n", (char) (status >> 24), (char) (status >> 16), (char) (status >> 8), (char) status); } @@ -857,8 +865,9 @@ static void wodHelper_BeginWaveHdr(WINE_ { status = AudioOutputUnitStart(wwo->audioUnit); if (status) { - fprintf(stderr, "err:winecoreaudio:AudioOutputUnitStart return %c%c%c%c\n", - (char) (status >> 24), (char) (status >> 16), (char) (status >> 8), (char) status); + if (wwo->err_on) + fprintf(stderr, "err:winecoreaudio:AudioOutputUnitStart return %c%c%c%c\n", + (char) (status >> 24), (char) (status >> 16), (char) (status >> 8), (char) status); } else wwo->state = WINE_WS_PLAYING; } @@ -867,10 +876,12 @@ static void wodHelper_BeginWaveHdr(WINE_ { if (wwo->lpLoopPtr) { - fprintf(stderr, "trace:winecoreaudio:wodHelper_BeginWaveHdr Already in a loop. Discarding loop on this header (%p)\n", lpWaveHdr); + if (wwo->warn_on) + fprintf(stderr, "warn:winecoreaudio:wodHelper_BeginWaveHdr Already in a loop. Discarding loop on this header (%p)\n", lpWaveHdr); } else { - fprintf(stderr, "trace:winecoreaudio:wodHelper_BeginWaveHdr Starting loop (%dx) with %p\n", lpWaveHdr->dwLoops, lpWaveHdr); + if (wwo->trace_on) + fprintf(stderr, "trace:winecoreaudio:wodHelper_BeginWaveHdr Starting loop (%dx) with %p\n", lpWaveHdr->dwLoops, lpWaveHdr);
wwo->lpLoopPtr = lpWaveHdr; /* Windows does not touch WAVEHDR.dwLoops,