summaryrefslogtreecommitdiff
path: root/src/arch/context.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2019-02-05 22:03:38 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2019-02-05 22:03:38 (GMT)
commit17f591f2230ac66394467d5e5eefe71cb259637d (patch)
tree1664e994b2904e5e9009027fc57749a11667365b /src/arch/context.c
parentff187d24b7441e88e1f0361d59b0f6f55851791f (diff)
Fixed a huge number of memory leaks.
Diffstat (limited to 'src/arch/context.c')
-rw-r--r--src/arch/context.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/arch/context.c b/src/arch/context.c
index cedec33..3b78161 100644
--- a/src/arch/context.c
+++ b/src/arch/context.c
@@ -144,7 +144,7 @@ static void g_proc_context_dispose(GProcContext *ctx)
size_t i; /* Boucle de parcours */
for (i = 0; i < ctx->items_count; i++)
- g_object_unref(G_OBJECT(ctx->items[i]));
+ g_clear_object(&ctx->items[i]);
g_mutex_clear(&ctx->items_mutex);
@@ -167,6 +167,15 @@ static void g_proc_context_dispose(GProcContext *ctx)
static void g_proc_context_finalize(GProcContext *ctx)
{
+ DisassPriorityLevel i; /* Boucle de parcours */
+
+ for (i = 0; i < DPL_COUNT; i++)
+ if (ctx->drop_points[i] != NULL)
+ free(ctx->drop_points[i]);
+
+ if (ctx->extra_symbols != NULL)
+ free(ctx->extra_symbols);
+
if (ctx->items != NULL)
free(ctx->items);