X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=formats%2Fctf%2Fmetadata%2Fctf-visitor-generate-io-struct.c;fp=formats%2Fctf%2Fmetadata%2Fctf-visitor-generate-io-struct.c;h=223d7d07d02f1d7c2c010a0a2724b176dd9c6869;hp=40ba4aa03ba6222802d6ae55f5aa39167478a658;hb=e1b6c35805c93f7e79cc561e170cd46cc7967fa8;hpb=5cb9b55796490a0ac4c3f7cd647d11f7329f9646 diff --git a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c index 40ba4aa0..223d7d07 100644 --- a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c +++ b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c @@ -2791,6 +2791,22 @@ int ctf_env_declaration_visit(FILE *fd, int depth, struct ctf_node *node, env->domain[TRACER_ENV_LEN - 1] = '\0'; printf_verbose("env.domain = \"%s\"\n", env->domain); g_free(right); + } else if (!strcmp(left, "tracer_name")) { + char *right; + + if (env->tracer_name[0]) { + fprintf(fd, "[warning] %s: duplicated env tracer_name\n", __func__); + goto error; /* ret is 0, so not an actual error, just warn. */ + } + right = concatenate_unary_strings(&node->u.ctf_expression.right); + if (!right) { + fprintf(fd, "[warning] %s: unexpected unary expression for env tracer_name\n", __func__); + goto error; /* ret is 0, so not an actual error, just warn. */ + } + strncpy(env->tracer_name, right, TRACER_ENV_LEN); + env->tracer_name[TRACER_ENV_LEN - 1] = '\0'; + printf_verbose("env.tracer_name = \"%s\"\n", env->tracer_name); + g_free(right); } else if (!strcmp(left, "sysname")) { char *right;