From d95efac94d6ea0ed539f3f6bde762dd479dbd599 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Thu, 9 Mar 2006 20:51:22 +0000 Subject: r14099: Fix Coverity # 113 (This used to be commit db00570535c03360bb2833f070878a33e94306b0) --- source3/utils/net_ads.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'source3/utils') diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index f54896b3a8..a55bc4fe56 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -367,15 +367,15 @@ static int ads_user_info(int argc, const char **argv) } escaped_user = escape_ldap_string_alloc(argv[0]); - - if (!(ads = ads_startup())) { - return -1; - } if (!escaped_user) { d_fprintf(stderr, "ads_user_info: failed to escape user %s\n", argv[0]); - ads_destroy(&ads); - return -1; + return -1; + } + + if (!(ads = ads_startup())) { + SAFE_FREE(escaped_user); + return -1; } asprintf(&searchstring, "(sAMAccountName=%s)", escaped_user); @@ -385,6 +385,7 @@ static int ads_user_info(int argc, const char **argv) if (!ADS_ERR_OK(rc)) { d_fprintf(stderr, "ads_search: %s\n", ads_errstr(rc)); ads_destroy(&ads); + SAFE_FREE(escaped_user); return -1; } @@ -403,6 +404,7 @@ static int ads_user_info(int argc, const char **argv) ads_msgfree(ads, res); ads_destroy(&ads); + SAFE_FREE(escaped_user); return 0; } -- cgit