lavf/avio: flush internal buffer when calling avio_close()
authorStefano Sabatini <stefasab@gmail.com>
Wed, 15 Aug 2012 23:25:05 +0000 (01:25 +0200)
committerStefano Sabatini <stefasab@gmail.com>
Sat, 18 Aug 2012 09:21:44 +0000 (11:21 +0200)
This seems the expected behavior.

libavformat/avio.h
libavformat/aviobuf.c
libavformat/version.h

index ccf2f42..08e9dd3 100644 (file)
@@ -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);
index f6a914a..13b3c86 100644 (file)
@@ -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)
index 39c4bf5..4275ecd 100644 (file)
@@ -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, \