[FFmpeg-cvslog] lavf/avio: flush internal buffer when calling avio_close()

Stefano Sabatini git at videolan.org
Sat Aug 18 11:30:12 CEST 2012


ffmpeg | branch: master | Stefano Sabatini <stefasab at gmail.com> | Thu Aug 16 01:25:05 2012 +0200| [725213545d63172099618cbaa08428e11729906d] | committer: Stefano Sabatini

lavf/avio: flush internal buffer when calling avio_close()

This seems the expected behavior.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=725213545d63172099618cbaa08428e11729906d
---

 libavformat/avio.h    |    3 +++
 libavformat/aviobuf.c |    1 +
 libavformat/version.h |    2 +-
 3 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/avio.h b/libavformat/avio.h
index ccf2f42..08e9dd3 100644
--- a/libavformat/avio.h
+++ b/libavformat/avio.h
@@ -391,6 +391,9 @@ int avio_open2(AVIOContext **s, const char *url, int flags,
  * Close the resource accessed by the AVIOContext s and free it.
  * This function can only be used if s was opened by avio_open().
  *
+ * The internal buffer is automatically flushed before closing the
+ * resource.
+ *
  * @return 0 on success, an AVERROR < 0 on error.
  */
 int avio_close(AVIOContext *s);
diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index f6a914a..13b3c86 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -793,6 +793,7 @@ int avio_close(AVIOContext *s)
     if (!s)
         return 0;
 
+    avio_flush(s);
     h = s->opaque;
     av_free(s->buffer);
     if (!s->write_flag)
diff --git a/libavformat/version.h b/libavformat/version.h
index 39c4bf5..4275ecd 100644
--- a/libavformat/version.h
+++ b/libavformat/version.h
@@ -31,7 +31,7 @@
 
 #define LIBAVFORMAT_VERSION_MAJOR 54
 #define LIBAVFORMAT_VERSION_MINOR 25
-#define LIBAVFORMAT_VERSION_MICRO 100
+#define LIBAVFORMAT_VERSION_MICRO 101
 
 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
                                                LIBAVFORMAT_VERSION_MINOR, \



More information about the ffmpeg-cvslog mailing list