*/
static int stop_tracing(void)
{
- int ret = CMD_SUCCESS;
+ int ret;
char *session_name;
if (opt_session_name == NULL) {
ret = lttng_stop_tracing(session_name);
if (ret < 0) {
+ /* Don't set ret so lttng can interpret the sessiond error. */
goto free_name;
}
+ ret = CMD_SUCCESS;
+
MSG("Tracing stopped for session %s", session_name);
free_name:
*/
int cmd_stop(int argc, const char **argv)
{
- int opt, ret;
+ int opt, ret = CMD_SUCCESS;
static poptContext pc;
pc = poptGetContext(NULL, argc, argv, long_options, 0);
while ((opt = poptGetNextOpt(pc)) != -1) {
switch (opt) {
case OPT_HELP:
- usage(stderr);
- ret = CMD_SUCCESS;
+ usage(stdout);
goto end;
case OPT_LIST_OPTIONS:
list_cmd_options(stdout, long_options);
- ret = CMD_SUCCESS;
goto end;
default:
usage(stderr);
ret = stop_tracing();
end:
+ poptFreeContext(pc);
return ret;
}