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 file<prebuffer_size + // + if(prebuffer_size > off) + prebuffer_size = off; } else {
Fix will be added in the xmms-1.2.3-1 package. Thanks!
*** Bug 16480 has been marked as a duplicate of this bug. ***