Check return value of ffm_write_write_index and ffm_read_write_index.
authorPatrik Kullman <patrik@yes.nu>
Thu, 12 Feb 2009 02:23:25 +0000 (02:23 +0000)
committerBaptiste Coudurier <baptiste.coudurier@gmail.com>
Thu, 12 Feb 2009 02:23:25 +0000 (02:23 +0000)
Patch by Patrik Kullman, patrik at yes dot nu

Originally committed as revision 17174 to svn://svn.ffmpeg.org/ffmpeg/trunk

ffserver.c

index 223f1a0..9236050 100644 (file)
@@ -2413,7 +2413,10 @@ static int http_start_receive_data(HTTPContext *c)
     }
     c->feed_fd = fd;
 
-    c->stream->feed_write_index = ffm_read_write_index(fd);
+    if ((c->stream->feed_write_index = ffm_read_write_index(fd)) < 0) {
+        http_log("Error reading write index from feed file: %s\n", strerror(errno));
+        return -1;
+    }
     c->stream->feed_size = lseek(fd, 0, SEEK_END);
     lseek(fd, 0, SEEK_SET);
 
@@ -2479,7 +2482,10 @@ static int http_receive_data(HTTPContext *c)
                 feed->feed_write_index = FFM_PACKET_SIZE;
 
             /* write index */
-            ffm_write_write_index(c->feed_fd, feed->feed_write_index);
+            if (ffm_write_write_index(c->feed_fd, feed->feed_write_index) < 0) {
+                http_log("Error writing index to feed file: %s\n", strerror(errno));
+                goto fail;
+            }
 
             /* wake up any waiting connections */
             for(c1 = first_http_ctx; c1 != NULL; c1 = c1->next) {