summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libavformat/yop.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/libavformat/yop.c b/libavformat/yop.c
index f9ead026a2..0d8d9f2ff7 100644
--- a/libavformat/yop.c
+++ b/libavformat/yop.c
@@ -125,14 +125,11 @@ static int yop_read_packet(AVFormatContext *s, AVPacket *pkt)
yop->video_packet.stream_index = 1;
if (yop->video_packet.data) {
- *pkt = yop->video_packet;
- yop->video_packet.data = NULL;
- yop->video_packet.buf = NULL;
- yop->video_packet.size = 0;
+ av_packet_move_ref(pkt, &yop->video_packet);
pkt->data[0] = yop->odd_frame;
pkt->flags |= AV_PKT_FLAG_KEY;
yop->odd_frame ^= 1;
- return pkt->size;
+ return 0;
}
ret = av_new_packet(&yop->video_packet,
yop->frame_size - yop->audio_block_length);
@@ -166,7 +163,7 @@ static int yop_read_packet(AVFormatContext *s, AVPacket *pkt)
av_shrink_packet(&yop->video_packet, yop->palette_size + ret);
// Arbitrarily return the audio data first
- return yop->audio_block_length;
+ return 0;
err_out:
av_packet_unref(&yop->video_packet);