fix control flow with filter by cpu
[lttv.git] / ltt / branches / poly / lttv / modules / gui / histogram / histoeventhooks.c
index 96382c877399e9742a7b4c085bce572fd77df1bc..28d83583f0b651b3add57bfa363e4db853555694 100644 (file)
@@ -121,6 +121,7 @@ static void histo_request_background_data(HistoControlFlowData *histocontrol_flo
   gint num_traces = lttv_traceset_number(tsc->ts);
   gint i;
   LttvTrace *trace;
+  LttvTraceState *tstate;
 
   LttvHooks *histo_background_ready_hook = 
     lttv_hooks_new();
@@ -130,8 +131,10 @@ static void histo_request_background_data(HistoControlFlowData *histocontrol_flo
   
   for(i=0;i<num_traces;i++) {
     trace = lttv_traceset_get(tsc->ts, i);
+    tstate = LTTV_TRACE_STATE(tsc->traces[i]);
 
-    if(lttvwindowtraces_get_ready(g_quark_from_string("state"),trace)==FALSE) {
+    if(lttvwindowtraces_get_ready(g_quark_from_string("state"),trace)==FALSE
+        && !tstate->has_precomputed_states) {
 
       if(lttvwindowtraces_get_in_progress(g_quark_from_string("state"),
                                           trace) == FALSE) {
@@ -338,7 +341,7 @@ int histo_count_event(void *hook_data, void *call_data){
   LttvFilter *histo_filter = histocontrol_flow_data->histo_main_win_filter;
   if(histo_filter != NULL && histo_filter->head != NULL)
     if(!lttv_filter_tree_parse(histo_filter->head,e,tfc->tf,
-          tfc->t_context->t,tfc))
+          tfc->t_context->t,tfc,NULL,NULL))
       return FALSE;
 
   TimeWindow time_window  =  lttvwindow_get_time_window(histocontrol_flow_data->tab);
This page took 0.022999 seconds and 4 git commands to generate.