filesrc: Ignore seek error on non-seekable files
authorOlivier Crête <olivier.crete@collabora.com>
Tue, 3 Jun 2014 02:07:52 +0000 (22:07 -0400)
committerOlivier Crête <olivier.crete@collabora.com>
Mon, 23 Jun 2014 20:32:17 +0000 (16:32 -0400)
This make it works with FIFOs.

https://bugzilla.gnome.org/show_bug.cgi?id=731176

plugins/elements/gstfilesrc.c

index dd4e811..3141883 100644 (file)
@@ -480,14 +480,16 @@ gst_file_src_start (GstBaseSrc * basesrc)
           g_strerror (errno));
       src->seekable = FALSE;
     } else {
+      res = lseek (src->fd, 0, SEEK_SET);
+
+      if (res < 0) {
+        /* We really don't like not being able to go back to 0 */
+        src->seekable = FALSE;
+        goto lseek_wonky;
+      }
+
       src->seekable = TRUE;
     }
-    res = lseek (src->fd, 0, SEEK_SET);
-    if (res < 0) {
-      /* We really don't like not being able to go back to 0 */
-      src->seekable = FALSE;
-      goto lseek_wonky;
-    }
   }
 
   /* We can only really do seeking on regular files - for other file types, we