From 21db43ab55ff80a7c0fd208deedfb7320cfea20e Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 12 Mar 2006 10:57:42 +0000 Subject: r14235: Fix Coverity bug # 91 (This used to be commit 26d471c02c6ddff15836a3c0d30f9e37f018b66d) --- source3/libsmb/libsmbclient.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'source3') diff --git a/source3/libsmb/libsmbclient.c b/source3/libsmb/libsmbclient.c index a18e9910aa..75b2b37c06 100644 --- a/source3/libsmb/libsmbclient.c +++ b/source3/libsmb/libsmbclient.c @@ -2594,6 +2594,10 @@ smbc_opendir_ctx(SMBCCTX *context, if (!find_master_ip(workgroup, &server_addr.ip)) { + if (dir) { + SAFE_FREE(dir->fname); + SAFE_FREE(dir); + } errno = ENOENT; return NULL; } @@ -2705,6 +2709,10 @@ smbc_opendir_ctx(SMBCCTX *context, DEBUG(0, ("Could not get name of " "local/domain master browser " "for server %s\n", server)); + if (dir) { + SAFE_FREE(dir->fname); + SAFE_FREE(dir); + } errno = EPERM; return NULL; @@ -2828,6 +2836,10 @@ smbc_opendir_ctx(SMBCCTX *context, &targetcli, targetpath)) { d_printf("Could not resolve %s\n", path); + if (dir) { + SAFE_FREE(dir->fname); + SAFE_FREE(dir); + } return NULL; } -- cgit