{ 0, 0xFFFF, 0xFFFF, 0xFFFF } /* COL_MODE_UNKNOWN : white */
};
+/*
+RUN+USER MODE green
+RUN+SYSCALL
+RUN+TRAP
+RUN+IRQ
+WAIT+foncé
+WAIT CPU + WAIT FORK vert foncé ou jaune
+IRQ rouge
+TRAP: orange
+SYSCALL: bleu pâle
+ZOMBIE + WAIT EXIT
+*/
/*****************************************************************************
nb_trace = lttv_traceset_number(traceset);
// FIXME : eventually request for more traces
// for(i = 0 ; i < nb_trace ; i++) {
- g_assert(TRACE_NUMBER < nb_trace);
- i = TRACE_NUMBER;
+ for(i = 0; i<MIN(TRACE_NUMBER+1, nb_trace);i++)
{
EventsRequest *events_request = g_new(EventsRequest, 1);
// Create the hooks
/* Add these hooks to each event_by_id hooks list */
-
/* add before */
for(k = 0 ; k < hooks->len/2 ; k++) {
hook = g_array_index(hooks, LttvTraceHook, k);
gtk_widget_show(drawing->scrollbar);
gtk_widget_show(drawing->hbox);
+ /* Allocate the colors */
+ GdkColormap* colormap = gdk_colormap_get_system();
+ gboolean success[NUM_COLORS];
+ gdk_colormap_alloc_colors(colormap, drawing_colors, NUM_COLORS, FALSE,
+ TRUE, success);
return drawing;
}
void drawing_destroy(Drawing_t *drawing)
{
g_info("drawing_destroy %p", drawing);
+
+ /* Free the colors */
+ GdkColormap* colormap = gdk_colormap_get_system();
+
+ gdk_colormap_free_colors(colormap, drawing_colors, NUM_COLORS);
+
+
+
// Do not unref here, Drawing_t destroyed by it's widget.
//g_object_unref( G_OBJECT(drawing->drawing_area));
if(drawing->gc != NULL)
time_ll = ltt_time_to_uint64(time);
interval_ll = ltt_time_to_uint64(window_time_interval);
-
- *x = (guint)(time_ll * width / interval_ll);
+
+ if(interval_ll == 0) {
+ g_assert(time_ll == 0);
+ *x = 0;
+ } else {
+ *x = (guint)(time_ll * width / interval_ll);
+ }
}