diff options
author | Ian Rogers <irogers@google.com> | 2021-03-31 21:34:20 -0700 |
---|---|---|
committer | Mike Leach <mike.leach@linaro.org> | 2021-05-17 15:35:19 +0100 |
commit | 853da282523691105288f22a20103ea93e816c0b (patch) | |
tree | 16debacd51dc11bdf8893b97ddac14e0c6381369 | |
parent | 5770f5d52599fcc2fa904c097affe5c07440c2d7 (diff) | |
download | OpenCSD-853da282523691105288f22a20103ea93e816c0b.tar.gz |
opencsd: Avoid index out of bound read
The order of the array bound check and memory access are reversed, flip.
This issue was caught by LLVM's address sanitizer.
-rw-r--r-- | decoder/source/ocsd_dcd_tree.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/decoder/source/ocsd_dcd_tree.cpp b/decoder/source/ocsd_dcd_tree.cpp index 5dafba9..b8c27a0 100644 --- a/decoder/source/ocsd_dcd_tree.cpp +++ b/decoder/source/ocsd_dcd_tree.cpp @@ -511,7 +511,7 @@ DecodeTreeElement *DecodeTree::getNextElement(uint8_t &elemID) if(m_decode_elem_iter < 0x80) { // find a none zero entry or end of range - while((m_decode_elements[m_decode_elem_iter] == 0) && (m_decode_elem_iter < 0x80)) + while((m_decode_elem_iter < 0x80) && (m_decode_elements[m_decode_elem_iter] == 0)) m_decode_elem_iter++; // return entry unless end of range |