diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/analysis/disass/rank.c | 2 | ||||
| -rw-r--r-- | src/analysis/routine.c | 8 | ||||
| -rw-r--r-- | src/gtkext/gtkgraphdisplay.c | 2 | 
3 files changed, 11 insertions, 1 deletions
| diff --git a/src/analysis/disass/rank.c b/src/analysis/disass/rank.c index b4a8f92..b6eb4c5 100644 --- a/src/analysis/disass/rank.c +++ b/src/analysis/disass/rank.c @@ -130,4 +130,6 @@ void rank_routine_blocks(GBinRoutine *routine)      g_object_unref(G_OBJECT(start)); +    g_object_unref(G_OBJECT(blocks)); +  } diff --git a/src/analysis/routine.c b/src/analysis/routine.c index fa68ecd..4116044 100644 --- a/src/analysis/routine.c +++ b/src/analysis/routine.c @@ -710,7 +710,13 @@ size_t g_binary_routine_get_var_index_from_offset(const GBinRoutine *routine, si  GBlockList *g_binary_routine_get_basic_blocks(const GBinRoutine *routine)  { -    return routine->blocks; +    GBlockList *result;                     /* Instance de liste à renvoyer*/ + +    result = routine->blocks; + +    g_object_ref(G_OBJECT(result)); + +    return result;  } diff --git a/src/gtkext/gtkgraphdisplay.c b/src/gtkext/gtkgraphdisplay.c index 7721a44..955f540 100644 --- a/src/gtkext/gtkgraphdisplay.c +++ b/src/gtkext/gtkgraphdisplay.c @@ -672,6 +672,8 @@ static void gtk_graph_display_define_main_address(GtkGraphDisplay *display, cons          display->cluster = bootstrap_graph_cluster(GTK_DISPLAY_PANEL(display)->binary,                                                     list, display->highlighted); +        g_object_unref(G_OBJECT(list)); +          g_graph_cluster_place(display->cluster, display);          /** | 
