diff options
Diffstat (limited to 'saedit/config.c')
-rw-r--r-- | saedit/config.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/saedit/config.c b/saedit/config.c index c514e26..f28ab54 100644 --- a/saedit/config.c +++ b/saedit/config.c @@ -9,10 +9,6 @@ | | \*=======================================*/ -#include <glib.h> -#include <ibusxml.h> -#include "common.h" -#include "xml.h" #include "config.h" Options *config_options_new() { @@ -60,10 +56,13 @@ void config_keys_save(Keys *keys) { POSTFIX_FOLDER, NULL)); g_key_file_set_boolean(key_file, "General", "ShowGrid", keys->show_grid); - g_file_set_contents(KEYS_CONFIG_FILE, - g_key_file_to_data(key_file, NULL, NULL), - -1, - NULL); + + mkdir(KEYS_CONFIG_DIR, S_IRWXU); + int fd = g_creat(KEYS_CONFIG_FILE, S_IREAD | S_IWRITE); + gchar *buf = g_key_file_to_data(key_file, NULL, NULL); + write(fd, buf, strlen(buf), NULL); + close(fd); + g_key_file_free(key_file); } |