summaryrefslogtreecommitdiff
path: root/libavutil/frame.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavutil/frame.c')
-rw-r--r--libavutil/frame.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libavutil/frame.c b/libavutil/frame.c
index aa5820c0e9..9cd5f9ab37 100644
--- a/libavutil/frame.c
+++ b/libavutil/frame.c
@@ -317,6 +317,8 @@ void av_frame_unref(AVFrame *frame)
av_buffer_unref(&frame->hw_frames_ctx);
+ av_buffer_unref(&frame->opaque_ref);
+
get_frame_defaults(frame);
}
@@ -440,6 +442,13 @@ FF_ENABLE_DEPRECATION_WARNINGS
av_dict_copy(&sd_dst->metadata, sd_src->metadata, 0);
}
+ av_buffer_unref(&dst->opaque_ref);
+ if (src->opaque_ref) {
+ dst->opaque_ref = av_buffer_ref(src->opaque_ref);
+ if (!dst->opaque_ref)
+ return AVERROR(ENOMEM);
+ }
+
return 0;
}