summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFabiano Fidêncio <fidencio@redhat.com>2017-05-15 11:54:00 +0200
committerLukas Slebodnik <lslebodn@redhat.com>2017-05-15 16:49:07 +0200
commit6a1da829eaa1eee3e854f0cadc0b6effff776ab4 (patch)
treedc1bc875f42f2608c6603f9776e15c5f838339e7
parent71731d26dc4f2c36989779f327b0e9a399486e14 (diff)
downloadsssd-6a1da829eaa1eee3e854f0cadc0b6effff776ab4.tar.gz
sssd-6a1da829eaa1eee3e854f0cadc0b6effff776ab4.tar.xz
sssd-6a1da829eaa1eee3e854f0cadc0b6effff776ab4.zip
CACHE_REQ: Avoid using of uninitialized value
Commit 4ef0b19a introduced the following warning, as "req" may be used without being initialized: src/responder/common/cache_req/cache_req_search.c: In function 'cache_req_search_done': src/responder/common/cache_req/cache_req_search.c:467:9: error: 'req' may be used uninitialized in this function [-Werror=maybe-uninitialized] tevent_req_error(req, ret); ^ src/responder/common/cache_req/cache_req_search.c:424:24: note: 'req' was declared here struct tevent_req *req; ^ cc1: all warnings being treated as errors In order to fix the issue above, let's just allocate tmp_ctx after "req" is already set. Related: https://pagure.io/SSSD/sssd/issue/3362 Signed-off-by: Fabiano Fidêncio <fidencio@redhat.com> Co-Author: Lukáš Slebodník <lslebodn@redhat.com> Reviewed-by: Sumit Bose <sbose@redhat.com>
-rw-r--r--src/responder/common/cache_req/cache_req_search.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/src/responder/common/cache_req/cache_req_search.c b/src/responder/common/cache_req/cache_req_search.c
index 793dbc504..70448a763 100644
--- a/src/responder/common/cache_req/cache_req_search.c
+++ b/src/responder/common/cache_req/cache_req_search.c
@@ -425,18 +425,18 @@ static void cache_req_search_done(struct tevent_req *subreq)
struct ldb_result *result = NULL;
errno_t ret;
- tmp_ctx = talloc_new(NULL);
- if (tmp_ctx == NULL) {
- ret = ENOMEM;
- goto done;
- }
-
req = tevent_req_callback_data(subreq, struct tevent_req);
state = tevent_req_data(req, struct cache_req_search_state);
state->dp_success = state->cr->plugin->dp_recv_fn(subreq, state->cr);
talloc_zfree(subreq);
+ tmp_ctx = talloc_new(NULL);
+ if (tmp_ctx == NULL) {
+ ret = ENOMEM;
+ goto done;
+ }
+
/* Get result from cache again. */
ret = cache_req_search_cache(tmp_ctx, state->cr, &result);
if (ret != EOK) {