Author: vlendec Date: 2006-03-12 10:57:42 +0000 (Sun, 12 Mar 2006) New Revision: 14235
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=14235 Log: Fix Coverity bug # 91 Modified: branches/SAMBA_3_0/source/libsmb/libsmbclient.c trunk/source/libsmb/libsmbclient.c Changeset: Modified: branches/SAMBA_3_0/source/libsmb/libsmbclient.c =================================================================== --- branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2006-03-12 10:52:56 UTC (rev 14234) +++ branches/SAMBA_3_0/source/libsmb/libsmbclient.c 2006-03-12 10:57:42 UTC (rev 14235) @@ -2594,6 +2594,10 @@ 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 @@ 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 @@ &targetcli, targetpath)) { d_printf("Could not resolve %s\n", path); + if (dir) { + SAFE_FREE(dir->fname); + SAFE_FREE(dir); + } return NULL; } Modified: trunk/source/libsmb/libsmbclient.c =================================================================== --- trunk/source/libsmb/libsmbclient.c 2006-03-12 10:52:56 UTC (rev 14234) +++ trunk/source/libsmb/libsmbclient.c 2006-03-12 10:57:42 UTC (rev 14235) @@ -2594,6 +2594,10 @@ 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 @@ 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 @@ &targetcli, targetpath)) { d_printf("Could not resolve %s\n", path); + if (dir) { + SAFE_FREE(dir->fname); + SAFE_FREE(dir); + } return NULL; }
