From: Noel Power Date: Tue, 9 Jul 2019 15:06:30 +0000 (+0000) Subject: lib/addns: clang: Fix 'Assigned value is garbage or undefined' X-Git-Tag: tdb-1.4.2~480 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=be2b69fecebd35d7a60057d6515e4401d3ce1294;p=thirdparty%2Fsamba.git lib/addns: clang: Fix 'Assigned value is garbage or undefined' Fixes: lib/addns/dnsquery.c:222:10: warning: Assigned value is garbage or undefined <--[clang] *numdcs = num_srvs; /* size_t->int */ ^ 1 warning generated. Also fixes the out param being modified even on failure Signed-off-by: Noel Power Reviewed-by: Gary Lockyer --- diff --git a/lib/addns/dnsquery.c b/lib/addns/dnsquery.c index 87ae97e3d0b..90e4de9a053 100644 --- a/lib/addns/dnsquery.c +++ b/lib/addns/dnsquery.c @@ -205,7 +205,7 @@ NTSTATUS ads_dns_lookup_srv(TALLOC_CTX *ctx, struct tevent_context *ev; struct tevent_req *req; NTSTATUS status = NT_STATUS_NO_MEMORY; - size_t num_srvs; + size_t num_srvs = 0; ev = samba_tevent_context_init(ctx); if (ev == NULL) { @@ -219,7 +219,9 @@ NTSTATUS ads_dns_lookup_srv(TALLOC_CTX *ctx, goto fail; } status = ads_dns_lookup_srv_recv(req, ctx, dclist, &num_srvs); - *numdcs = num_srvs; /* size_t->int */ + if (NT_STATUS_IS_OK(status)) { + *numdcs = num_srvs; /* size_t->int */ + } fail: TALLOC_FREE(ev); return status;