shotgunefx wrote:> I've been struggling desperately to get iGuidance 4 working with Wine
and I've come across what seems like an incredibly specific problem.
>
> I've been struggling with the TTS output for the navigation, it just
keeps randomly locking up the app, sometimes after a mile, sometimes 30, after
figuring out I could debug just the wave classes, I think I've found a clue.
>
> It keeps hanging on wodPlayer_NotifyCompletions and just waiting forever
when it locks up. Here's the interesting part though...
>
> It only locks up when the difference between lpWaveHdr->reserved and
wwo->dwPlayedTotal is EXACTLY 940 [Shocked]
>
> I've repeated this over 4 times. How I even caught it... lol.
> I wrote a parser to verify it wasn't a fluke, on the first run, there
were 446 instances of "wodPlayer_NotifyCompletions" and not one had a
value of "940" until it did and locked up the application, where it
will just keep outputting something along the lines of ....
>
> trace:wave:wodPlayer_NotifyCompletions still playing 0x1060120
(152740/151800)
> trace:wave:wodPlayer waiting 21ms (21,21)
> ....forever.
>
> On the second run, 346 instances, until it hit the magic number again and
locked up, on the 3rd, 81 instances before it hit it, the 4th, 151. In all
cases, the first time the difference is "940", it goes boom.
>
> And the values for lpWaveHdr->reserved and wwo->dwPlayedTotal are
never the same, just the difference between them.
>
> I'm guessing I'm hitting some weird bug in winealsa.drv, because
everything else sound-wise, works flawlessly.
>
>
> I'm running
> wine-1.1.4,
> KDE4 (Hardy Heron) 2.6.24-19-generic using Alsa (1.0.16) dmix for output.
> The computer is a Dell laptop Inspiron 8600 with intel 82801db-ich4 audio.
>
> No other Win apps have crashed yet (including TTS ones) though I
haven't tried that many.
>
> I don't even know where to begin tracking this down, any suggestions
would be very appreciated.
>
> Thanks,
> -Lee
Is it a regression? You could try an older version of Wine to see if it used to
work, if that's the case then run a regression test
http://wiki.winehq.org/RegressionTesting then file a bug report. If it's
not a regression, you should file a bug report anyway.