diff options
author | James Zern <jzern@google.com> | 2018-09-14 21:36:26 -0700 |
---|---|---|
committer | James Zern <jzern@google.com> | 2018-09-14 21:36:26 -0700 |
commit | 54827e5782d2e00f2117544201fe2b3dc6e0bce5 (patch) | |
tree | c7049aa114c6b1751803ca5e9c0f869ea954a464 /vp9/encoder/vp9_aq_cyclicrefresh.c | |
parent | cb671194c9ac4068922a971318670c91bf96c906 (diff) | |
download | libvpx-54827e5782d2e00f2117544201fe2b3dc6e0bce5.tar libvpx-54827e5782d2e00f2117544201fe2b3dc6e0bce5.tar.gz libvpx-54827e5782d2e00f2117544201fe2b3dc6e0bce5.tar.bz2 libvpx-54827e5782d2e00f2117544201fe2b3dc6e0bce5.zip |
vp9,encoder: check pointers before member access
verify pointers passed to vp9_cyclic_refresh_free() and
vp9_setup_pc_tree() before attempting to free members of the structs.
based on the change in libaom:
ie41de6b5a AV1FrameSizeTests.LargeValidSizes: avoid segfault.
Change-Id: Ib81759923cb442e19f42e6edb4b61171d8799ba6
Diffstat (limited to 'vp9/encoder/vp9_aq_cyclicrefresh.c')
-rw-r--r-- | vp9/encoder/vp9_aq_cyclicrefresh.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/vp9/encoder/vp9_aq_cyclicrefresh.c b/vp9/encoder/vp9_aq_cyclicrefresh.c index 66e2babcd..a2a742493 100644 --- a/vp9/encoder/vp9_aq_cyclicrefresh.c +++ b/vp9/encoder/vp9_aq_cyclicrefresh.c @@ -52,9 +52,11 @@ CYCLIC_REFRESH *vp9_cyclic_refresh_alloc(int mi_rows, int mi_cols) { } void vp9_cyclic_refresh_free(CYCLIC_REFRESH *cr) { - vpx_free(cr->map); - vpx_free(cr->last_coded_q_map); - vpx_free(cr); + if (cr != NULL) { + vpx_free(cr->map); + vpx_free(cr->last_coded_q_map); + vpx_free(cr); + } } // Check if this coding block, of size bsize, should be considered for refresh |