when the file size is less than the calculated prebuffer size, then the
oss_loop() waits for data indefinitely. modifying the code to set the
prebuffer size to a limit of the file sample size fixes the problem on an
ix86 platform. not much testing has occurred outside of the specific test
set of .wav files (most of the .wav in the system sounds area).
patch for audio.c in xmms 1.2.3 pre:
--- Output/OSS/audio.c Thu Sep 14 14:57:01 2000
+++ Output/OSS/audio.c.fix Thu Sep 14 14:56:39 2000
@@ -396,6 +396,11 @@
off += cnt;
+ // eliminate hang in oss_loop when size of
+ if(prebuffer_size > off)
+ prebuffer_size = off;
Fix will be added in the xmms-1.2.3-1 package. Thanks!
*** Bug 16480 has been marked as a duplicate of this bug. ***