changeset 505:f665e3a6dad7 trunk

[svn] - tweak behaviour a little
author nenolod
date Sun, 21 Jan 2007 22:14:15 -0800
parents 4ddafd821a25
children fb54b6f4955a
files ChangeLog src/curl/curl.c
diffstat 2 files changed, 11 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Sun Jan 21 22:03:41 2007 -0800
+++ b/ChangeLog	Sun Jan 21 22:14:15 2007 -0800
@@ -1,3 +1,11 @@
+2007-01-22 06:03:41 +0000  William Pitcock <nenolod@sacredspiral.co.uk>
+  revision [1094]
+  - fix
+  
+  trunk/src/wma/libffwma/file.c |    1 -
+  1 file changed, 1 deletion(-)
+
+
 2007-01-22 05:45:52 +0000  William Pitcock <nenolod@sacredspiral.co.uk>
   revision [1092]
   - mms transport
--- a/src/curl/curl.c	Sun Jan 21 22:03:41 2007 -0800
+++ b/src/curl/curl.c	Sun Jan 21 22:14:15 2007 -0800
@@ -40,6 +40,8 @@
 struct _CurlHandle {
   CURL *curl;
 
+  GSList *charstack; // getc/ungetc emulation  --nenolod
+
   gssize length; // the length of the file
   gsize rd_abs; // the absolute position for reading from the stream
   gsize wr_abs; // the absolute position where the input connection is
@@ -65,8 +67,6 @@
 
   gchar *name;
   gchar *title;
-
-  GSList *charstack; // getc/ungetc emulation  --nenolod
 };
 
 VFSConstructor curl_const;
@@ -627,7 +627,6 @@
 
   if (handle->charstack != NULL)
   {
-    handle->rd_abs--;
     return c;
   }
 
@@ -725,7 +724,7 @@
 curl_vfs_feof_impl(VFSFile * file)
 {
   CurlHandle *handle = file->handle;
-  return (handle->rd_abs == handle->length);
+  return ((handle->rd_abs == handle->length) && g_slist_length(handle->charstack) == 0);
 }
 
 gint