[Vorbis-dev] patch for non-seekable streams on Windows

Vidur Apparao vidur at slimdevices.com
Thu Oct 14 17:46:21 PDT 2004


Monty wrote:

>>>Perhaps only some versions of windows have this bug?
>>>
>>>      
>>>
>>The problem occurs on Windows XP, suggesting that it's been around for a 
>>while in the NT flavors of Windows.
>>    
>>
>
>Agreed, although I'm presonally slightly astounded we'd not noticed
>until this point in that case.
>  
>
It is possible that the problem only occurs when stdin is a socket (as 
opposed to a pipe). I ran into the problem while trying to get oggdec to 
read from and write to a socket. It seems possible, though unlikely, 
that this hasn't been tried before on Windows.

>>"If successful, fseek returns 0. Otherwise, it returns a nonzero value. 
>>On devices incapable of seeking, the return value is undefined."
>>
>>The last sentence implies that the implementation is not ANSI and POSIX 
>>compliant, no?
>>    
>>
>
>"Eek".  I don't suppose Windows has a supported seekability test in
>that case?
>  
>
Well...the seek-to-end test seemed to work in my case. Other than that, 
I'm not aware of anything definitive - at least not in stdio land.

The only clue I found related to this issue is a suggestion in the Perl 
Archive::Zip package changelogs 
(http://bike-nomad.com/perl/Archive-Zip/Changes) that seekability can't 
be guessed on Windows. The solution there was to introduce a 
$seekability parameter into the API.



More information about the Vorbis-dev mailing list