[geary/mjog/data-location-migration: 23/29] Application.Controller: Clean up invoking XDG config migration




commit 693484148432c7e23ca255e9759b1ff5b24fdfca
Author: Michael Gratton <mike vee net>
Date:   Tue Oct 13 23:33:55 2020 +1100

    Application.Controller: Clean up invoking XDG config migration
    
    Order args to better, create the config dir in the controller since
    that is always needed, regardless of any migrations.

 src/client/application/application-controller.vala | 12 ++++++++----
 src/client/util/util-migrate.vala                  | 13 +++----------
 2 files changed, 11 insertions(+), 14 deletions(-)
---
diff --git a/src/client/application/application-controller.vala 
b/src/client/application/application-controller.vala
index ef6344899..24c244c82 100644
--- a/src/client/application/application-controller.vala
+++ b/src/client/application/application-controller.vala
@@ -171,11 +171,15 @@ internal class Application.Controller :
             this.application.get_app_plugins_dir()
         );
 
+        // Create standard config directory
+        try {
+            config_dir.make_directory_with_parents();
+        } catch (GLib.IOError.EXISTS err) {
+            // fine
+        }
+
         // Migrate configuration if necessary.
-        Util.Migrate.xdg_config_dir(
-            this.application.get_user_data_directory(),
-            this.application.get_user_config_directory()
-        );
+        Util.Migrate.xdg_config_dir(config_dir, data_dir);
 
         // Hook up cert, accounts and credentials machinery
 
diff --git a/src/client/util/util-migrate.vala b/src/client/util/util-migrate.vala
index 9cebcfc63..edb07b45f 100644
--- a/src/client/util/util-migrate.vala
+++ b/src/client/util/util-migrate.vala
@@ -19,21 +19,14 @@ namespace Util.Migrate {
      * It also appends a "primary_email" key to the new configuration file to reliaby keep
      * track of the user's email address.
      */
-    public static void xdg_config_dir(File user_data_dir, File user_config_dir) throws Error {
+    public static void xdg_config_dir(GLib.File user_config_dir,
+                                      GLib.File user_data_dir)
+        throws GLib.Error {
         File new_config_dir;
         File old_data_dir;
         File new_config_file;
         File old_config_file;
 
-        // Create ~/.config/geary
-        try {
-            user_config_dir.make_directory_with_parents();
-        } catch (Error err) {
-            // The user may have already created the directory, so don't throw EXISTS.
-            if (!(err is IOError.EXISTS))
-                throw err;
-        }
-
         // Return if Geary has never been run (~/.local/share/geary does not exist).
         if (!user_data_dir.query_exists())
             return;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]