From: Egbert Eich 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 Signed-off-by: Egbert Eich --- 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; }