aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2012-03-03 08:50:15 -0800
committerChris Robinson <[email protected]>2012-03-03 08:50:15 -0800
commit49433c2074c57eb996f78e32869b3069799560d6 (patch)
tree0c55ead68b9ed8318b2614f3c6661fe52cd96b33
parenta93ff6ef3c24856cd0d05d89cf8d7c051bdc25e6 (diff)
Slight correction for handling the wave writer backend's timer wrapping
-rw-r--r--Alc/backends/wave.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Alc/backends/wave.c b/Alc/backends/wave.c
index 5ef363d3..ad187896 100644
--- a/Alc/backends/wave.c
+++ b/Alc/backends/wave.c
@@ -101,9 +101,9 @@ static ALuint WaveProc(ALvoid *ptr)
avail = (ALuint64)(now-start) * pDevice->Frequency / 1000;
if(avail < done)
{
- /* Timer wrapped. Add the remainder of the cycle to the available
- * count and reset the number of samples done */
- avail += (ALuint64)0xFFFFFFFFu*pDevice->Frequency/1000 - done;
+ /* Timer wrapped (50 days???). Add the remainder of the cycle to
+ * the available count and reset the number of samples done */
+ avail += ((ALuint64)1<<32)*pDevice->Frequency/1000 - done;
done = 0;
}
if(avail-done < pDevice->UpdateSize)