Fix: rotation client example: leak of handle on error
authorJérémie Galarneau <jeremie.galarneau@efficios.com>
Wed, 16 Jun 2021 19:08:21 +0000 (15:08 -0400)
committerJérémie Galarneau <jeremie.galarneau@efficios.com>
Wed, 16 Jun 2021 19:08:21 +0000 (15:08 -0400)
1452927 Resource leak

The system resource will not be reclaimed and reused, reducing the
future availability of the resource.

In setup_session: Leak of memory or pointers to system
resources (CWE-404)

CID 1452927 (#1 of 1): Resource leak (RESOURCE_LEAK)8. leaked_storage:
Variable chan_handle going out of scope leaks the storage it points to

Reported-by: Coverity Scan
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Change-Id: I4c215ac4a86f9f70fd5c9d3aa13f944d3d7a2cc7

doc/examples/rotation/rotate-client-example.c

index ae641d895040d9f36acad9fc4a97ac9839ea18e7..5cb0887bffa88503ca0000a62d6f9d1368fc435a 100644 (file)
@@ -53,7 +53,7 @@ static int setup_session(const char *session_name, const char *path)
        int ret;
        struct lttng_domain dom;
        struct lttng_event ev;
-       struct lttng_handle *chan_handle;
+       struct lttng_handle *chan_handle = NULL;
 
        printf("Creating session %s\n", session_name);
        ret = lttng_create_session(session_name, path);
@@ -90,11 +90,10 @@ static int setup_session(const char *session_name, const char *path)
                goto end;
        }
 
-       lttng_destroy_handle(chan_handle);
-
        ret = 0;
 
 end:
+       lttng_destroy_handle(chan_handle);
        return ret;
 }
 
This page took 0.026517 seconds and 4 git commands to generate.