mov: Use av_stream_add_side_data() for displaymatrix side data
authorJames Almer <jamrial@gmail.com>
Mon, 21 Nov 2016 23:54:29 +0000 (18:54 -0500)
committerVittorio Giovara <vittorio.giovara@gmail.com>
Wed, 23 Nov 2016 15:37:36 +0000 (10:37 -0500)
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
libavformat/mov.c

index df29f2a..28adce7 100644 (file)
@@ -3545,20 +3545,12 @@ static int mov_read_header(AVFormatContext *s)
             break;
         case AVMEDIA_TYPE_VIDEO:
             if (sc->display_matrix) {
-                AVPacketSideData *sd, *tmp;
-
-                tmp = av_realloc_array(st->side_data,
-                                       st->nb_side_data + 1, sizeof(*tmp));
-                if (!tmp)
-                    return AVERROR(ENOMEM);
-
-                st->side_data = tmp;
-                st->nb_side_data++;
+                err = av_stream_add_side_data(st, AV_PKT_DATA_DISPLAYMATRIX,
+                                              (uint8_t *)sc->display_matrix,
+                                              sizeof(int32_t) * 9);
+                if (err < 0)
+                    return err;
 
-                sd = &st->side_data[st->nb_side_data - 1];
-                sd->type = AV_PKT_DATA_DISPLAYMATRIX;
-                sd->size = sizeof(int32_t) * 9;
-                sd->data = (uint8_t*)sc->display_matrix;
                 sc->display_matrix = NULL;
             }
             break;