aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatt Wolenetz <wolenetz@google.com>2017-02-08 15:40:46 -0800
committerMichael Niedermayer <michael@niedermayer.cc>2017-02-10 12:14:40 +0100
commitb5c13002d18e8cd0ab19b37bb1fff3ea75ec3e5e (patch)
treee306e8975272cf153e3f6cb8aaff5ca28b42aa2d
parenta5dabd4013d1d4e90855d955fcc5069c6ddf8170 (diff)
downloadffmpeg-b5c13002d18e8cd0ab19b37bb1fff3ea75ec3e5e.tar.gz
lavf/mov.c: Avoid OOB in mov_read_udta_string()
Core of patch is from paul@paulmehta.com Reference https://crbug.com/643952 (udta_string portion) Signed-off-by: Matt Wolenetz <wolenetz@chromium.org> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 9bbdf5d921ef57e1698f64981e4ea04db7c56fb5) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/mov.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index b03a4b947a..6fc792f0b7 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -380,11 +380,11 @@ retry:
return ret;
} else if (!key && c->found_hdlr_mdta && c->meta_keys) {
uint32_t index = AV_RB32(&atom.type);
- if (index < c->meta_keys_count) {
+ if (index < c->meta_keys_count && index > 0) {
key = c->meta_keys[index];
} else {
av_log(c->fc, AV_LOG_WARNING,
- "The index of 'data' is out of range: %d >= %d.\n",
+ "The index of 'data' is out of range: %d < 1 or >= %d.\n",
index, c->meta_keys_count);
}
}