projects
/
libav.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
00dbff4
)
h264: prevent two matching fields from being both a short/long ref combination
author
Anton Khirnov
<anton@khirnov.net>
Thu, 28 Nov 2013 09:54:35 +0000
(10:54 +0100)
committer
Anton Khirnov
<anton@khirnov.net>
Sat, 18 Jan 2014 19:42:39 +0000
(20:42 +0100)
Fixes possible access to freed memory.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
libavcodec/h264_refs.c
patch
|
blob
|
blame
|
history
diff --git
a/libavcodec/h264_refs.c
b/libavcodec/h264_refs.c
index
bba77d1
..
88aaac7
100644
(file)
--- a/
libavcodec/h264_refs.c
+++ b/
libavcodec/h264_refs.c
@@
-621,6
+621,8
@@
int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count)
* Report the problem and keep the pair where it is,
* and mark this field valid.
*/
+ if (h->short_ref[0] == h->cur_pic_ptr)
+ remove_short_at_index(h, 0);
if (h->long_ref[mmco[i].long_arg] != h->cur_pic_ptr) {
remove_long(h, mmco[i].long_arg, 0);