Commit b250bcdf authored by David Reid's avatar David Reid

ALSA: Fix a potential infinite loop in MMAP mode.

parent 4f85fb86
......@@ -9746,7 +9746,6 @@ mal_bool32 mal_device_write__alsa(mal_device* pDevice)
return MAL_FALSE;
}
if (pDevice->alsa.isUsingMMap) {
// mmap.
mal_bool32 requiresRestart;
......@@ -9786,7 +9785,11 @@ mal_bool32 mal_device_write__alsa(mal_device* pDevice)
}
}
framesAvailable -= mappedFrames;
if (framesAvailable >= mappedFrames) {
framesAvailable -= mappedFrames;
} else {
framesAvailable = 0;
}
}
} else {
// readi/writei.
......@@ -9880,7 +9883,11 @@ mal_bool32 mal_device_read__alsa(mal_device* pDevice)
}
}
framesAvailable -= mappedFrames;
if (framesAvailable >= mappedFrames) {
framesAvailable -= mappedFrames;
} else {
framesAvailable = 0;
}
}
} else {
// readi/writei.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment