fall back mmap() call using MAP_PRIVATE for working on no-mmu systems
authorMike Frysinger <vapier.adi@gmail.com>
Thu, 28 Dec 2006 00:32:06 +0000 (00:32 +0000)
committerAurelien Jacobs <aurel@gnuage.org>
Thu, 28 Dec 2006 00:32:06 +0000 (00:32 +0000)
patch by Mike Frysinger   vapier.adi _at_ gmail.com

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

libavformat/grab.c

index 2b7c550..99cbe2f 100644 (file)
@@ -219,8 +219,11 @@ static int grab_read_header(AVFormatContext *s1, AVFormatParameters *ap)
     } else {
         s->video_buf = mmap(0,s->gb_buffers.size,PROT_READ|PROT_WRITE,MAP_SHARED,video_fd,0);
         if ((unsigned char*)-1 == s->video_buf) {
-            perror("mmap");
-            goto fail;
+            s->video_buf = mmap(0,s->gb_buffers.size,PROT_READ|PROT_WRITE,MAP_PRIVATE,video_fd,0);
+            if ((unsigned char*)-1 == s->video_buf) {
+                perror("mmap");
+                goto fail;
+            }
         }
         s->gb_frame = 0;
         s->time_frame = av_gettime() * s->frame_rate / s->frame_rate_base;