From be2b69fecebd35d7a60057d6515e4401d3ce1294 Mon Sep 17 00:00:00 2001 From: Noel Power Date: Tue, 9 Jul 2019 15:06:30 +0000 Subject: [PATCH] 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 --- lib/addns/dnsquery.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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; -- 2.47.3