aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwm4 <nfxjfg@googlemail.com>2014-12-15 04:32:58 +0100
committerMichael Niedermayer <michaelni@gmx.at>2014-12-15 05:32:36 +0100
commit135c733125e322e343b23fa522233a34fd354e60 (patch)
tree7d0ff2773df7b589899cd400dbc0c2e7720df80f
parent3b3a3c3d448edf071203632c0b68776ecb9d46e5 (diff)
downloadffmpeg-135c733125e322e343b23fa522233a34fd354e60.tar.gz
lavu/frame: fix malloc error path in av_frame_copy_props()
The error path frees all side data, but forgets to reset the side data count. This can blow up later in av_frame_unref() and free_side_data(). Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit a400edbb6d00c0211de38e4f1b4f593681db91d8) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavutil/frame.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavutil/frame.c b/libavutil/frame.c
index 4ee06306ce..5c9aa2914c 100644
--- a/libavutil/frame.c
+++ b/libavutil/frame.c
@@ -503,6 +503,7 @@ int av_frame_copy_props(AVFrame *dst, const AVFrame *src)
free_side_data(&dst->side_data[i]);
}
av_freep(&dst->side_data);
+ dst->nb_side_data = 0;
return AVERROR(ENOMEM);
}
memcpy(sd_dst->data, sd_src->data, sd_src->size);