aboutsummaryrefslogtreecommitdiff
path: root/src/svf
diff options
context:
space:
mode:
authorPaul Fertser <fercerpav@gmail.com>2018-01-18 11:59:10 +0300
committerPaul Fertser <fercerpav@gmail.com>2018-03-13 08:41:21 +0000
commit8b192df59a10df105af3cff1551f5181deea83d6 (patch)
tree831dad106e25288d0d9c0dee2ed942229d2f2134 /src/svf
parent3a32902987fd1ebf256f4f2aea79c7c87ed86070 (diff)
downloadriscv-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/svf')
-rw-r--r--src/svf/svf.c5
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;
}