clang-tidy: add most bugprone warnings
[lttng-tools.git] / doc / examples / rotation / rotate-client-example.c
index ae641d895040d9f36acad9fc4a97ac9839ea18e7..86e5b04f25fc9a5cd55fcd9ca83bcad82c7b7833 100644 (file)
 #include <stdlib.h>
 #include <string.h>
 #include <unistd.h>
+#include <assert.h>
 
 #define DEFAULT_DATA_AVAILABILITY_WAIT_TIME 200000 /* usec */
 
 static volatile int quit = 0;
 
-static void sighandler(int signal)
+static void sighandler(int signal __attribute__((unused)))
 {
-       printf("Signal caught, exiting\n");
+       const char msg[] = "Signal caught, exiting\n";
+       const int ret =  write(STDOUT_FILENO, msg, sizeof(msg));
+
+       assert(ret == 0); /* NOLINT assert is not async signal safe */
        quit = 1;
 }
 
@@ -53,7 +57,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 +94,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.024095 seconds and 4 git commands to generate.