From: Simon Wilkinson Date: Sat, 31 Mar 2012 19:16:16 +0000 (-0400) Subject: budb: Don't leak memory X-Git-Tag: upstream/1.8.0_pre1^2~2587 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=63f7b0a2051b1c5cc20208b20b73c587f3d74b4f;p=packages%2Fo%2Fopenafs.git budb: Don't leak memory Don't leak the malloc'd path variable everytime we call truncateDatabase Caught by clang-analyzer Change-Id: I583d81b136113820dab00a6eb35ca8e1aeec2cd1 Reviewed-on: http://gerrit.openafs.org/7105 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- diff --git a/src/budb/server.c b/src/budb/server.c index d7f296092..e107aaafb 100644 --- a/src/budb/server.c +++ b/src/budb/server.c @@ -313,11 +313,10 @@ truncateDatabase(void) afs_int32 code = 0; int fd; - path = - (char *)malloc(strlen(globalConfPtr->databaseDirectory) + - strlen(globalConfPtr->databaseName) + - strlen(globalConfPtr->databaseExtension) + 1); - if (path == 0) + path = malloc(strlen(globalConfPtr->databaseDirectory) + + strlen(globalConfPtr->databaseName) + + strlen(globalConfPtr->databaseExtension) + 1); + if (path == NULL) ERROR(-1); /* construct the database name */ @@ -335,6 +334,8 @@ truncateDatabase(void) close(fd); } + free(path); + error_exit: return (code); }