diff --git a/ffserver.c b/ffserver.c
index f98ee821bb61161debad239f4743fa9d14cba86b..bab40a327506a232683425196ae77fe9a1bf578c 100644
--- a/ffserver.c
+++ b/ffserver.c
@@ -346,7 +346,8 @@ static int ffm_write_write_index(int fd, int64_t pos)
 
     for(i=0;i<8;i++)
         buf[i] = (pos >> (56 - i * 8)) & 0xff;
-    lseek(fd, 8, SEEK_SET);
+    if (lseek(fd, 8, SEEK_SET) < 0)
+        return AVERROR(EIO);
     if (write(fd, buf, 8) != 8)
         return AVERROR(EIO);
     return 8;