waiter: modernize the waiter interface
[lttng-tools.git] / src / bin / lttng-sessiond / notification-thread-events.cpp
index ab0fa84ce0d197dad29eb9c351acbb853feaa89f..70774a97530b1b625033387c2215ab052e47bf54 100644 (file)
@@ -2503,7 +2503,6 @@ static bool is_trigger_action_notify(const struct lttng_trigger *trigger)
 {
        bool is_notify = false;
        const struct lttng_action *action = lttng_trigger_get_const_action(trigger);
-       const struct lttng_action *inner_action;
        enum lttng_action_type action_type;
 
        LTTNG_ASSERT(action);
@@ -2515,7 +2514,7 @@ static bool is_trigger_action_notify(const struct lttng_trigger *trigger)
                goto end;
        }
 
-       for_each_action_const (inner_action, action) {
+       for (auto inner_action : lttng::ctl::const_action_list_view(action)) {
                if (lttng_action_get_type(inner_action) == LTTNG_ACTION_TYPE_NOTIFY) {
                        is_notify = true;
                        goto end;
@@ -3312,21 +3311,24 @@ int handle_notification_thread_command(struct notification_thread_handle *handle
        if (ret) {
                goto error_unlock;
        }
+
 end:
        if (cmd->is_async) {
-               free(cmd);
+               delete cmd;
                cmd = nullptr;
        } else {
-               lttng_waiter_wake_up(&cmd->reply_waiter);
+               cmd->command_completed_waker->wake();
        }
+
        return ret;
+
 error_unlock:
        /* Wake-up and return a fatal error to the calling thread. */
-       lttng_waiter_wake_up(&cmd->reply_waiter);
        cmd->reply_code = LTTNG_ERR_FATAL;
+
 error:
-       /* Indicate a fatal error to the caller. */
-       return -1;
+       ret = -1;
+       goto end;
 }
 
 static int socket_set_non_blocking(int socket)
This page took 0.023889 seconds and 4 git commands to generate.