[WINEALSA] Fix an error message

Jerry Jenkins jerry_j_jenkins at yahoo.com
Sun Oct 3 11:39:05 CDT 2004


Don't print such messages as "Error in writing
wavehdr. Reason: Success".

ChangeLog:
	* dlls/winmm/winealsa/audio.c: Jerry Jenkins
<Jerry_J_Jenkins at yahoo.com>
	Fix an error message



		
_______________________________
Do you Yahoo!?
Declare Yourself - Register online to vote today!
http://vote.yahoo.com
-------------- next part --------------
Index: dlls/winmm/winealsa/audio.c
===================================================================
RCS file: /home/wine/wine/dlls/winmm/winealsa/audio.c,v
retrieving revision 1.55
diff -u -r1.55 audio.c
--- dlls/winmm/winealsa/audio.c	8 Sep 2004 01:50:37 -0000	1.55
+++ dlls/winmm/winealsa/audio.c	3 Oct 2004 16:03:40 -0000
@@ -1238,29 +1238,31 @@
 
     TRACE("Writing wavehdr %p.%lu[%lu]\n", lpWaveHdr, wwo->dwPartialOffset, lpWaveHdr->dwBufferLength);
 
-    written = (wwo->write)(wwo->p_handle, lpWaveHdr->lpData + wwo->dwPartialOffset, toWrite);
-    if ( written < 0)
-    {
-    	/* XRUN occurred. let's try to recover */
-        ALSA_XRUNRecovery(wwo, written);
+    if (toWrite > 0) {
 	written = (wwo->write)(wwo->p_handle, lpWaveHdr->lpData + wwo->dwPartialOffset, toWrite);
-    }
-    if (written <= 0)
-    {
-        /* still in error */
-        ERR("Error in writing wavehdr. Reason: %s\n", snd_strerror(written));
-        return written;
-    }
+	if ( written < 0) {
+	    /* XRUN occurred. let's try to recover */
+	    ALSA_XRUNRecovery(wwo, written);
+	    written = (wwo->write)(wwo->p_handle, lpWaveHdr->lpData + wwo->dwPartialOffset, toWrite);
+	}
+	if (written <= 0) {
+	    /* still in error */
+	    ERR("Error in writing wavehdr. Reason: %s\n", snd_strerror(written));
+	    return written;
+	}
+    } else
+	written = 0;
 
     wwo->dwPartialOffset += snd_pcm_frames_to_bytes(wwo->p_handle, written);
     if ( wwo->dwPartialOffset >= lpWaveHdr->dwBufferLength) {
 	/* this will be used to check if the given wave header has been fully played or not... */
-        wwo->dwPartialOffset = lpWaveHdr->dwBufferLength;
-        /* If we wrote all current wavehdr, skip to the next one */
-        wodPlayer_PlayPtrNext(wwo);
+	wwo->dwPartialOffset = lpWaveHdr->dwBufferLength;
+	/* If we wrote all current wavehdr, skip to the next one */
+	wodPlayer_PlayPtrNext(wwo);
     }
     *frames -= written;
     wwo->dwWrittenTotal += snd_pcm_frames_to_bytes(wwo->p_handle, written);
+    TRACE("dwWrittenTotal=%lu\n", wwo->dwWrittenTotal);
 
     return written;
 }


More information about the wine-patches mailing list