X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Flttv%2Fmodules%2Ftext%2FtextDump.c;h=b6de60fe8ad278427ec0853600edf1fc037db5a4;hb=4e4d11b3b1db254446f6cad04b3c3fa9b574851f;hp=9502aa0d696da0f8d49dc2dfadcd0158160d25b1;hpb=46c40a931ca7e93b2b5f8665039e95217f987d47;p=lttv.git diff --git a/ltt/branches/poly/lttv/modules/text/textDump.c b/ltt/branches/poly/lttv/modules/text/textDump.c index 9502aa0d..b6de60fe 100644 --- a/ltt/branches/poly/lttv/modules/text/textDump.c +++ b/ltt/branches/poly/lttv/modules/text/textDump.c @@ -20,6 +20,10 @@ before each trace, to print each event, and to print statistics after each trace. */ +#ifdef HAVE_CONFIG_H +#include +#endif + #include #include #include @@ -50,8 +54,6 @@ static LttvHooks *before_trace, *event_hook; -extern LttvFilter *a_lttv_filter; - void print_field(LttEvent *e, LttField *f, GString *s, gboolean field_names) { LttType *type; @@ -329,18 +331,29 @@ static gboolean write_trace_header(void *hook_data, void *call_data) static int write_event_content(void *hook_data, void *call_data) { + LttvIAttribute *attributes = LTTV_IATTRIBUTE(lttv_global_attributes()); + LttvTracefileContext *tfc = (LttvTracefileContext *)call_data; LttvTracefileState *tfs = (LttvTracefileState *)call_data; LttEvent *e; + LttvAttributeValue value_filter; + + LttvFilter *filter; + e = tfc->e; + + g_assert(lttv_iattribute_find_by_path(attributes, "filter/lttv_filter", + LTTV_POINTER, &value_filter)); + filter = (LttvFilter*)*(value_filter.v_pointer); + /* * call to the filter if available */ - if(!lttv_filter_tree_parse(a_lttv_filter->head,e,tfc->t_context->t,tfc->tf,tfs->process,tfc)) { + if(!lttv_filter_tree_parse(filter->head,e,tfc->tf,tfc->t_context->t,tfs->process,tfc)) { return FALSE; }