[patch] revert part of Aug 26 change in winmm/wineoss/audio.c that broke msvc++4.0 installer?

Dan Kegel dank at kegel.com
Wed Dec 11 11:25:24 CST 2002


Dimitrie O. Paun wrote:
> On December 11, 2002 02:20 am, Dan Kegel wrote:
> 
>>      /* input queue empty and output buffer with less than one fragment to play */
>>-    if (!wwo->lpPlayPtr && wwo->dwBufferSize < availInQ + wwo->dwFragmentSize) { 
>>-       TRACE("Run out of wavehdr:s...\n");
>>+    if (!wwo->lpPlayPtr && wwo->dwBufferSize < availInQ + 2 * wwo->dwFragmentSize) {
>>+        TRACE("Run out of wavehdr:s... flushing (%lu => %lu)\n",
>>+              wwo->dwPlayedTotal, wwo->dwWrittenTotal);
>>+        wwo->dwPlayedTotal = wwo->dwWrittenTotal;
>>          return INFINITE;
>>      }
>>Can someone who understands the code comment?
> 
> 
> I don't, never looked at audio code before, but the above has two changes:
> 
> The condition has the '2 *' bit in it, and the body of the if has
> +        wwo->dwPlayedTotal = wwo->dwWrittenTotal;
> The TRACEs are noops, can be ignored.
> 
> So I suggest trying them out individually, to see which one
> causes the problem (or maybe they can not be separated). 
> Experimentation will tell. :)

I tried each individually, and neither helped.  Only the two
changes together yielded a wine that properly terminated
when I clicked on the "Exit" button in msvc4++'s installer.
- Dan






More information about the wine-devel mailing list