summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatthiasclasen <matthias.clasen@gmail.com>2016-07-28 16:30:52 -0400
committerGitHub <noreply@github.com>2016-07-28 16:30:52 -0400
commitcb9c13cda7bca7a89453cb57785df8af54898b00 (patch)
tree04f17f75735e587d2bce0467692e6c85d7d7ca14
parent9583e0ddb4b6e817fb1fd4ea4f0e62fe6e3d1703 (diff)
parentb051571de836f3c1b327ed0906215733ddb66f06 (diff)
downloadflatpak-cb9c13cda7bca7a89453cb57785df8af54898b00.tar.gz
Merge pull request #214 from mwleeds/fix-memory-leaks
builder: Fix a few memory leaks
-rw-r--r--builder/builder-cache.c2
-rw-r--r--builder/builder-context.c5
-rw-r--r--builder/builder-main.c2
-rw-r--r--builder/builder-options.c1
4 files changed, 9 insertions, 1 deletions
diff --git a/builder/builder-cache.c b/builder/builder-cache.c
index 5a748d86..f7d32748 100644
--- a/builder/builder-cache.c
+++ b/builder/builder-cache.c
@@ -75,9 +75,11 @@ builder_cache_finalize (GObject *object)
g_clear_object (&self->cache_dir);
g_clear_object (&self->app_dir);
+ g_clear_object (&self->repo);
g_checksum_free (self->checksum);
g_free (self->branch);
g_free (self->last_parent);
+ g_free (self->stage);
if (self->unused_stages)
g_hash_table_unref (self->unused_stages);
diff --git a/builder/builder-context.c b/builder/builder-context.c
index afc5bc94..397b7805 100644
--- a/builder/builder-context.c
+++ b/builder/builder-context.c
@@ -75,6 +75,11 @@ builder_context_finalize (GObject *object)
{
BuilderContext *self = (BuilderContext *) object;
+ g_clear_object (&self->state_dir);
+ g_clear_object (&self->download_dir);
+ g_clear_object (&self->build_dir);
+ g_clear_object (&self->cache_dir);
+ g_clear_object (&self->ccache_dir);
g_clear_object (&self->app_dir);
g_clear_object (&self->base_dir);
g_clear_object (&self->soup_session);
diff --git a/builder/builder-main.c b/builder/builder-main.c
index a43fd46a..3000311f 100644
--- a/builder/builder-main.c
+++ b/builder/builder-main.c
@@ -170,7 +170,7 @@ main (int argc,
g_autoptr(GError) error = NULL;
g_autoptr(BuilderManifest) manifest = NULL;
- GOptionContext *context;
+ g_autoptr(GOptionContext) context = NULL;
const char *app_dir_path, *manifest_path;
g_autofree gchar *json = NULL;
g_autoptr(BuilderContext) build_context = NULL;
diff --git a/builder/builder-options.c b/builder/builder-options.c
index b867b46b..05c233a3 100644
--- a/builder/builder-options.c
+++ b/builder/builder-options.c
@@ -83,6 +83,7 @@ builder_options_finalize (GObject *object)
g_strfreev (self->env);
g_strfreev (self->build_args);
g_strfreev (self->config_opts);
+ g_hash_table_destroy (self->arch);
G_OBJECT_CLASS (builder_options_parent_class)->finalize (object);
}