diff options
author | Jeremy Leconte <jleconte@google.com> | 2020-12-10 17:54:54 +0100 |
---|---|---|
committer | Jeremy Leconte <jleconte@google.com> | 2020-12-10 18:54:53 +0000 |
commit | ffc179d8bfb836d7b39aaf8595a9051b25a7b437 (patch) | |
tree | 5c5a78afe3c73a29e5e2ef8cc74c575571902394 | |
parent | ebac57ce9250aac85701f5258ec54f9cf9bf14a8 (diff) | |
download | libvpx-ffc179d8bfb836d7b39aaf8595a9051b25a7b437.tar libvpx-ffc179d8bfb836d7b39aaf8595a9051b25a7b437.tar.gz libvpx-ffc179d8bfb836d7b39aaf8595a9051b25a7b437.tar.bz2 libvpx-ffc179d8bfb836d7b39aaf8595a9051b25a7b437.zip |
Fix nullptr with offset.
The error occurs with low resolution when LibvpxVp8Encoder::NumberOfThreads returns 1.
Bug: b:175283098
Change-Id: Icc9387c75f4ac6e4f09f102b3143e83c998c5e38
-rw-r--r-- | vp8/encoder/encodeframe.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/vp8/encoder/encodeframe.c b/vp8/encoder/encodeframe.c index 2b3d9564c..2f84381d2 100644 --- a/vp8/encoder/encodeframe.c +++ b/vp8/encoder/encodeframe.c @@ -343,8 +343,11 @@ static void encode_mb_row(VP8_COMP *cpi, VP8_COMMON *cm, int mb_row, const int nsync = cpi->mt_sync_range; vpx_atomic_int rightmost_col = VPX_ATOMIC_INIT(cm->mb_cols + nsync); const vpx_atomic_int *last_row_current_mb_col; - vpx_atomic_int *current_mb_col = &cpi->mt_current_mb_col[mb_row]; + vpx_atomic_int *current_mb_col = NULL; + if (vpx_atomic_load_acquire(&cpi->b_multi_threaded) != 0) { + current_mb_col = &cpi->mt_current_mb_col[mb_row]; + } if (vpx_atomic_load_acquire(&cpi->b_multi_threaded) != 0 && mb_row != 0) { last_row_current_mb_col = &cpi->mt_current_mb_col[mb_row - 1]; } else { |