Imported Debian version 2.5.0~trusty1.1
[deb_ffmpeg.git] / ffmpeg / libavdevice / iec61883.c
index 6d5ec4adea281964ec79c76211c779776744f18a..b29aad1d48a1b8d214609b7213e1d1dc9b106552 100644 (file)
@@ -219,8 +219,8 @@ static int iec61883_parse_queue_hdv(struct iec61883_data *dv, AVPacket *pkt)
         size = avpriv_mpegts_parse_packet(dv->mpeg_demux, pkt, packet->buf,
                                           packet->len);
         dv->queue_first = packet->next;
-        av_free(packet->buf);
-        av_free(packet);
+        av_freep(&packet->buf);
+        av_freep(&packet);
         dv->packets--;
 
         if (size > 0)
@@ -350,7 +350,7 @@ static int iec61883_read_header(AVFormatContext *context)
     if (!dv->max_packets)
         dv->max_packets = 100;
 
-    if (dv->type == IEC61883_HDV) {
+    if (CONFIG_MPEGTS_DEMUXER && dv->type == IEC61883_HDV) {
 
         /* Init HDV receive */
 
@@ -444,7 +444,7 @@ static int iec61883_close(AVFormatContext *context)
     pthread_mutex_destroy(&dv->mutex);
 #endif
 
-    if (dv->type == IEC61883_HDV) {
+    if (CONFIG_MPEGTS_DEMUXER && dv->type == IEC61883_HDV) {
         iec61883_mpeg2_recv_stop(dv->iec61883_mpeg2);
         iec61883_mpeg2_close(dv->iec61883_mpeg2);
         avpriv_mpegts_parse_close(dv->mpeg_demux);
@@ -455,8 +455,8 @@ static int iec61883_close(AVFormatContext *context)
     while (dv->queue_first) {
         DVPacket *packet = dv->queue_first;
         dv->queue_first = packet->next;
-        av_free(packet->buf);
-        av_free(packet);
+        av_freep(&packet->buf);
+        av_freep(&packet);
     }
 
     iec61883_cmp_disconnect(dv->raw1394, dv->node, dv->output_port,