From b3cacf82b438e9487cba7c2f4efcac79459b63cb Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@collabora.com>
Date: Thu, 8 Aug 2019 14:21:54 +0100
Subject: [PATCH] wrap: Clean up overrides directory before running the game

This means we won't leak resources if we're terminated abruptly.

Signed-off-by: Simon McVittie <smcv@collabora.com>
---
 src/wrap.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/src/wrap.c b/src/wrap.c
index ee8dac762..6e01655d2 100644
--- a/src/wrap.c
+++ b/src/wrap.c
@@ -2153,6 +2153,17 @@ main (int argc,
 
   flatpak_bwrap_finish (bwrap);
 
+  /* Clean up temporary directory before running our long-running process */
+  if (tmpdir != NULL &&
+      !glnx_shutil_rm_rf_at (-1, tmpdir, NULL, error))
+    {
+      g_warning ("Unable to delete temporary directory: %s",
+                 local_error->message);
+      g_clear_error (&local_error);
+    }
+
+  g_clear_pointer (&tmpdir, g_free);
+
   /* flatpak_bwrap_finish did this */
   g_assert (g_ptr_array_index (bwrap->argv, bwrap->argv->len - 1) == NULL);
 
-- 
GitLab