>>  I discovered that 'scm_unget_byte' is kind of dumb.  It puts the 
> bytes
>>  at the beginning of the pushback buffer instead of the end.  This means
>>  that every time you unget a byte, it has to shift up the existing
>>  contents of the buffer, so ungetting N bytes takes O(N^2) time.
>> 
>>  This patch implements a function 'scm_unget_bytes' that enables 
> large
>>  buffers to be unread efficiently.  It keeps the bytes at the end of the
>>  buffer instead of the beginning, but it can cope if some external code
>>  manipulates the pushback buffer by hand and puts the bytes at the
>>  beginning.
 
Have you checked that it works with gnome-vfs-port in guile-gnome?
 
It is true that none of Guile's clients ever look at putback_buf?
 
-Mike 

Reply via email to