Browse code

avformat/aviobuf: fix null dereference in avio_close_dyn_buf()

Fixes CID1135769

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

Michael Niedermayer authored on 2013/12/12 00:16:04
Showing 1 changed files
... ...
@@ -1036,7 +1036,7 @@ int ffio_open_dyn_packet_buf(AVIOContext **s, int max_packet_size)
1036 1036
 
1037 1037
 int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer)
1038 1038
 {
1039
-    DynBuffer *d = s->opaque;
1039
+    DynBuffer *d;
1040 1040
     int size;
1041 1041
     static const char padbuf[FF_INPUT_BUFFER_PADDING_SIZE] = {0};
1042 1042
     int padding = 0;
... ...
@@ -1045,6 +1045,7 @@ int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer)
1045 1045
         *pbuffer = NULL;
1046 1046
         return 0;
1047 1047
     }
1048
+    d = s->opaque;
1048 1049
 
1049 1050
     /* don't attempt to pad fixed-size packet buffers */
1050 1051
     if (!s->max_packet_size) {