X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=lib%2Fcontext.c;h=e2c062aa747378a73dd0bd5580af76452042e61e;hb=e1d01c3911e1e9a09f92afcbd9940cfc938f3d49;hp=90d77df88f6840af5a954616048f5fbc0f81c631;hpb=1059a2bfb89dfcdea336d7fdd5ef9bbdf552f3f2;p=babeltrace.git diff --git a/lib/context.c b/lib/context.c index 90d77df8..e2c062aa 100644 --- a/lib/context.c +++ b/lib/context.c @@ -26,14 +26,14 @@ #include #include #include +#include #include +#include +#include #include #include /* For O_RDONLY */ -/* TODO ybrosseau: should be hidden in the CTF format */ -#include /* for ctf_move_pos_slow */ - #include struct bt_context *bt_context_create(void) @@ -57,16 +57,21 @@ struct bt_context *bt_context_create(void) } int bt_context_add_trace(struct bt_context *ctx, const char *path, - const char *format_str) + const char *format_name) { struct trace_descriptor *td; struct format *fmt; struct bt_trace_handle *handle; int ret; - fmt = bt_lookup_format(g_quark_from_string(format_str)); - td = fmt->open_trace(path, O_RDONLY, - ctf_move_pos_slow, NULL); + fmt = bt_lookup_format(g_quark_from_string(format_name)); + if (!fmt) { + fprintf(stderr, "[error] [Context] Format \"%s\" unknown.\n\n", + format_name); + ret = -1; + goto end; + } + td = fmt->open_trace(path, O_RDONLY, NULL, NULL); if (!td) { fprintf(stderr, "[error] [Context] Cannot open_trace of the format %s .\n\n", path);