diff options
author | TreeHugger Robot <treehugger-gerrit@google.com> | 2020-03-19 18:39:44 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2020-03-19 18:39:44 +0000 |
commit | 1b481aebd63f7808ed3832eeb2f8ac70df1edc1f (patch) | |
tree | ae5fcad13fd0ee3b3835182f143763c1c434b07c | |
parent | 75db1b8e484ffd9256c553cb28dcd0b5d7a3c274 (diff) | |
parent | 196e72450a1f01797c7f994d00752649407a8baa (diff) | |
download | libhevc-1b481aebd63f7808ed3832eeb2f8ac70df1edc1f.tar.gz |
Merge "Fix DoS in NAL search" into qt-qpr1-dev
-rw-r--r-- | decoder/ihevcd_decode.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/decoder/ihevcd_decode.c b/decoder/ihevcd_decode.c index 16ed36b..9f634b7 100644 --- a/decoder/ihevcd_decode.c +++ b/decoder/ihevcd_decode.c @@ -626,6 +626,13 @@ WORD32 ihevcd_decode(iv_obj_t *ps_codec_obj, void *pv_api_ip, void *pv_api_op) nal_ofst = ihevcd_nal_search_start_code(ps_codec->pu1_inp_bitsbuf, ps_codec->i4_bytes_remaining); + /* If there is no start code found, consume the data and break */ + if(nal_ofst == ps_codec->i4_bytes_remaining) + { + ps_codec->pu1_inp_bitsbuf += nal_ofst; + ps_codec->i4_bytes_remaining -= nal_ofst; + break; + } ps_codec->i4_nal_ofst = nal_ofst; { |