From c734f59ba504f9598c520d4170e707de0f356a56 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Thu, 17 May 2018 19:42:10 +0100 Subject: [PATCH] mark: use gslice for inferred rect We can get a little boost by using the gslice allocator for the structs of the same size. --- lib/visualizers/sp-mark-visualizer-row.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/lib/visualizers/sp-mark-visualizer-row.c b/lib/visualizers/sp-mark-visualizer-row.c index 7d0e922c..9d75d474 100644 --- a/lib/visualizers/sp-mark-visualizer-row.c +++ b/lib/visualizers/sp-mark-visualizer-row.c @@ -79,7 +79,7 @@ free_inferred_rect (InferredRect *rect) { g_free (rect->name); g_free (rect->message); - g_free (rect); + g_slice_free (InferredRect, rect); } static void @@ -150,16 +150,12 @@ process_gpu_mark (BuildState *state, } else { - rect = g_malloc0 (sizeof (*rect)); - if (!rect) - return FALSE; - + rect = g_slice_new0 (InferredRect); rect->name = g_strdup (mark->name); rect->message = g_strdup (mark->message); rect->time = mark->frame.time; - g_hash_table_insert (state->inferred_rects, - rect->message, - rect); + + g_hash_table_insert (state->inferred_rects, rect->message, rect); } return TRUE;