avpacket: copy side data type and size in av_dup_packet
authorJanne Grunau <janne-libav@jannau.net>
Tue, 12 Mar 2013 21:16:45 +0000 (22:16 +0100)
committerJanne Grunau <janne-libav@jannau.net>
Wed, 13 Mar 2013 10:34:47 +0000 (11:34 +0100)
libavcodec/avpacket.c

index c94f282..df88f3f 100644 (file)
@@ -193,9 +193,12 @@ int av_dup_packet(AVPacket *pkt)
                      pkt->side_data_elems * sizeof(*pkt->side_data), 0, ALLOC_MALLOC);
             memset(pkt->side_data, 0,
                    pkt->side_data_elems * sizeof(*pkt->side_data));
-            for (i = 0; i < pkt->side_data_elems; i++)
+            for (i = 0; i < pkt->side_data_elems; i++) {
                 DUP_DATA(pkt->side_data[i].data, tmp_pkt.side_data[i].data,
                          tmp_pkt.side_data[i].size, 1, ALLOC_MALLOC);
+                pkt->side_data[i].size = tmp_pkt.side_data[i].size;
+                pkt->side_data[i].type = tmp_pkt.side_data[i].type;
+            }
         }
     }
     return 0;