diff options
| author | bigbear <ns@bigbear.dk> | 2024-02-08 03:11:14 +0100 | 
|---|---|---|
| committer | bigbear <ns@bigbear.dk> | 2024-02-08 19:52:53 +0100 | 
| commit | 410e1c7796a4142b565909bf645c21c4ef4d7b12 (patch) | |
| tree | f87e9f36b417438a1b0d7031d8116288a739cda2 /shell | |
| parent | a56d9001c7c919326be172171ddb0404640d1ec0 (diff) | |
FIX back port save settings older glib
Diffstat (limited to 'shell')
| -rw-r--r-- | shell/callbacks.c | 31 | 
1 files changed, 30 insertions, 1 deletions
| diff --git a/shell/callbacks.c b/shell/callbacks.c index af223e19..a70d520b 100644 --- a/shell/callbacks.c +++ b/shell/callbacks.c @@ -36,12 +36,38 @@ void cb_sync_manager()      sync_manager_show(shell->window);  } +#if GLIB_CHECK_VERSION(2,40,0) +#else +//For compatibility with older glib +gboolean g2_key_file_save_to_file (GKeyFile *key_file, +              const gchar  *filename, GError **error) +{ +  gchar *contents; +  gboolean success; +  gsize length; + +  g_return_val_if_fail (key_file != NULL, FALSE); +  g_return_val_if_fail (filename != NULL, FALSE); +  g_return_val_if_fail (error == NULL || *error == NULL, FALSE); + +  contents = g_key_file_to_data (key_file, &length, NULL); +  g_assert (contents != NULL); + +  success = g_file_set_contents (filename, contents, length, error); +  g_free (contents); + +  return success; +} +#endif  void cb_sync_on_startup()  {      gboolean setting = shell_action_get_active("SyncOnStartupAction");      GKeyFile *key_file = g_key_file_new(); +    g_mkdir(g_get_user_config_dir(),0755); +    g_mkdir(g_build_filename(g_get_user_config_dir(), "hardinfo", NULL),0755); +      gchar *conf_path = g_build_filename(g_get_user_config_dir(), "hardinfo2",                                          "settings.ini", NULL); @@ -49,8 +75,11 @@ void cb_sync_on_startup()          key_file, conf_path,          G_KEY_FILE_KEEP_COMMENTS | G_KEY_FILE_KEEP_TRANSLATIONS, NULL);      g_key_file_set_boolean(key_file, "Sync", "OnStartup", setting); +#if GLIB_CHECK_VERSION(2,40,0)      g_key_file_save_to_file(key_file, conf_path, NULL); - +#else +    g2_key_file_save_to_file(key_file, conf_path, NULL); +#endif      g_free(conf_path);      g_key_file_free(key_file);  } | 
