From 6208d1f813c2ea5a070d57aaa414fdd370391349 Mon Sep 17 00:00:00 2001 From: Patrick McDermott Date: Wed, 04 Oct 2017 23:09:41 -0400 Subject: mq_config_load(): Build profile directory And save profile name in mq_config_new(). --- (limited to 'src') diff --git a/src/config.c b/src/config.c index b9aa207..9cb48b9 100644 --- a/src/config.c +++ b/src/config.c @@ -203,6 +203,7 @@ mq_config_new(const gchar *profile) config = malloc(sizeof(*config)); + config->profile = g_strdup(profile); config->file_name = g_build_filename(g_get_user_config_dir(), profile, "config", NULL); config->key_file = g_key_file_new(); @@ -215,6 +216,13 @@ mq_config_new(const gchar *profile) gboolean mq_config_load(MqConfig *config) { + gchar *profile_dir; + + profile_dir = g_build_filename(g_get_user_config_dir(), config->profile, + NULL); + g_mkdir_with_parents(profile_dir, 0700); + g_free(profile_dir); + /* TODO: Handle parsing and ENOENT errors differently? */ return g_key_file_load_from_file(config->key_file, config->file_name, G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, NULL); diff --git a/src/config.h b/src/config.h index 97e58fa..b37c6bb 100644 --- a/src/config.h +++ b/src/config.h @@ -27,6 +27,7 @@ typedef struct MqConfig MqConfig; #include struct MqConfig { + gchar *profile; gchar *file_name; GKeyFile *key_file; gboolean types_and_cbs_set; -- cgit v0.9.1