Blob Blame History Raw
--- audacious-plugins-fedora-2.4.0/src/neon/neon.c	2010-08-26 01:07:50.000000000 +0200
+++ audacious-plugins-fedora-2.4.0.new/src/neon/neon.c	2010-09-09 15:23:26.259097001 +0200
@@ -917,6 +917,9 @@
         return 0;
     }
 
+    if (h->eof)
+        return 0;
+
     /* If the buffer is empty, wait for the reader thread to fill it. */
     g_mutex_lock (h->reader_status.mutex);
 
@@ -1243,6 +1246,11 @@
             newpos = h->pos + offset;
             break;
         case SEEK_END:
+            if (offset == 0) {
+                h->pos = content_length;
+                h->eof = TRUE;
+                return 0;
+            }
             newpos = content_length + offset;
             break;
         default:
@@ -1305,6 +1313,7 @@
      * Things seem to have worked. The next read request will start
      * the reader thread again.
      */
+    h->eof = FALSE;
 
     return 0;
 }