summaryrefslogtreecommitdiff
authorHui Zhang <hui.zhang@amlogic.com>2020-04-28 02:34:07 (GMT)
committer Hui Zhang <hui.zhang@amlogic.com>2020-05-06 01:28:10 (GMT)
commit189b5c9ba1105a12da8f3311c1d43495bdb9bc53 (patch)
treee27775d1f9bebe559aee1f4bb9e80f79d27a5ed9
parent850dbd4ffdddae0170ebd59d8ed7e8b18ce1f17c (diff)
downloadmedia_modules-189b5c9ba1105a12da8f3311c1d43495bdb9bc53.zip
media_modules-189b5c9ba1105a12da8f3311c1d43495bdb9bc53.tar.gz
media_modules-189b5c9ba1105a12da8f3311c1d43495bdb9bc53.tar.bz2
vavs2: Fix avs2 seek crash [1/1]
PD#SWPL-25090 Problem: avs2 playabck in seek, there is a crash happened sometimes Solution: add NULL pointer check before use it Verify: u212 Signed-off-by: Hui Zhang <hui.zhang@amlogic.com> Change-Id: Ida6b7ddc2682823e772e07d765f2ebc9bda18fd5
Diffstat
-rw-r--r--drivers/frame_provider/decoder/avs2/vavs2.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/frame_provider/decoder/avs2/vavs2.c b/drivers/frame_provider/decoder/avs2/vavs2.c
index a2119e0..4c2cb54 100644
--- a/drivers/frame_provider/decoder/avs2/vavs2.c
+++ b/drivers/frame_provider/decoder/avs2/vavs2.c
@@ -6852,13 +6852,15 @@ static void avs2_work(struct work_struct *work)
return;
}
} else if (dec->dec_result == DEC_RESULT_EOS) {
- avs2_print(dec, PRINT_FLAG_VDEC_STATUS,
+ avs2_print(dec, 0,
"%s: end of stream\n",
__func__);
dec->eos = 1;
- check_pic_error(dec, dec->avs2_dec.hc.cur_pic);
- avs2_post_process(&dec->avs2_dec);
- avs2_prepare_display_buf(dec);
+ if ( dec->avs2_dec.hc.cur_pic != NULL) {
+ check_pic_error(dec, dec->avs2_dec.hc.cur_pic);
+ avs2_post_process(&dec->avs2_dec);
+ avs2_prepare_display_buf(dec);
+ }
vdec_vframe_dirty(hw_to_vdec(dec), dec->chunk);
} else if (dec->dec_result == DEC_RESULT_FORCE_EXIT) {
avs2_print(dec, PRINT_FLAG_VDEC_STATUS,