diff options
author | Paul Fertser <fercerpav@gmail.com> | 2018-01-18 11:59:10 +0300 |
---|---|---|
committer | Paul Fertser <fercerpav@gmail.com> | 2018-03-13 08:41:21 +0000 |
commit | 8b192df59a10df105af3cff1551f5181deea83d6 (patch) | |
tree | 831dad106e25288d0d9c0dee2ed942229d2f2134 /src | |
parent | 3a32902987fd1ebf256f4f2aea79c7c87ed86070 (diff) | |
download | riscv-openocd-8b192df59a10df105af3cff1551f5181deea83d6.zip riscv-openocd-8b192df59a10df105af3cff1551f5181deea83d6.tar.gz riscv-openocd-8b192df59a10df105af3cff1551f5181deea83d6.tar.bz2 |
svf: improve robustness when processing invalid SVF files
Uninitialized argument value warnings reported by clang static
analizer.
Change-Id: I30af4900f517ffc0a7282689b58c7a224cdc080a
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Reviewed-on: http://openocd.zylin.com/4356
Tested-by: jenkins
Diffstat (limited to 'src')
-rw-r--r-- | src/svf/svf.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/svf/svf.c b/src/svf/svf.c index 1d686ba..223af7e 100644 --- a/src/svf/svf.c +++ b/src/svf/svf.c @@ -741,6 +741,9 @@ parse_char: pos++; } + if (num == 0) + return ERROR_FAIL; + *num_of_argu = num; return ERROR_OK; @@ -1313,7 +1316,7 @@ XXR_common: * SEC]] [ENDSTATE end_state] */ /* RUNTEST [run_state] min_time SEC [MAXIMUM max_time SEC] [ENDSTATE * end_state] */ - if ((num_of_argu < 3) && (num_of_argu > 11)) { + if ((num_of_argu < 3) || (num_of_argu > 11)) { LOG_ERROR("invalid parameter of %s", argus[0]); return ERROR_FAIL; } |