dst->hwaccel_flags = src->hwaccel_flags;
- if (!!dst->internal->pool != !!src->internal->pool ||
- (dst->internal->pool && dst->internal->pool->data != src->internal->pool->data)) {
- av_buffer_unref(&dst->internal->pool);
-
- if (src->internal->pool) {
- dst->internal->pool = av_buffer_ref(src->internal->pool);
- if (!dst->internal->pool)
- return AVERROR(ENOMEM);
- }
- }
+ err = av_buffer_replace(&dst->internal->pool, src->internal->pool);
+ if (err < 0)
+ return err;
}
if (for_user) {