41 lines
1.3 KiB
Diff
41 lines
1.3 KiB
Diff
From: Egbert Eich <eich@suse.com>
|
|
Date: Sat Jul 10 09:41:22 2021 +0200
|
|
Subject: parseServers(): Fix uninitialized variable simplify error path
|
|
Patch-mainline: Not yet
|
|
Git-repo: https://github.com/Unidata/netcdf-c
|
|
Git-commit: 06fbbbc78023abca48ae3a69aa409f7f0a4cf3a3
|
|
References:
|
|
|
|
When rtslen == 0 code jumped to 'done' where it checked for rts being
|
|
!= NULL. At this point, rts was not yet set.
|
|
Fixed code paths eliminating unneeded tests and jumps.
|
|
|
|
Signed-off-by: Egbert Eich <eich@suse.com>
|
|
Signed-off-by: Egbert Eich <eich@suse.de>
|
|
---
|
|
include/nctestserver.h | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
diff --git a/include/nctestserver.h b/include/nctestserver.h
|
|
index 978210c8..e7b63b80 100644
|
|
--- a/include/nctestserver.h
|
|
+++ b/include/nctestserver.h
|
|
@@ -47,7 +47,7 @@ parseServers(const char* remotetestservers)
|
|
size_t rtslen = strlen(remotetestservers);
|
|
|
|
/* Keep LGTM quiet */
|
|
- if(rtslen > MAXREMOTETESTSERVERS) goto done;
|
|
+ if(rtslen > MAXREMOTETESTSERVERS) return NULL;
|
|
list = (char**)malloc(sizeof(char*) * (int)(rtslen/2));
|
|
if(list == NULL) return NULL;
|
|
rts = strdup(remotetestservers);
|
|
@@ -65,8 +65,8 @@ parseServers(const char* remotetestservers)
|
|
*l = NULL;
|
|
servers = list;
|
|
list = NULL;
|
|
+ free(rts);
|
|
done:
|
|
- if(rts) free(rts);
|
|
if(list) free(list);
|
|
return servers;
|
|
}
|