summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGary Kramlich <grim@reaperworld.com>2019-03-01 02:38:42 +0000
committerGary Kramlich <grim@reaperworld.com>2019-03-01 02:38:42 +0000
commitcb26fda23a6cac7accb85418a8e75ecf1e68a966 (patch)
treec712fb57bcfb0e5a8db7c9f29921cb024332c1aa
parent13b97fc29dbec9b4da00488fdac64f75c06a586d (diff)
parent757eae56d42dd0d8b62147bfecec6e553ec75bce (diff)
downloadpidgin-cb26fda23a6cac7accb85418a8e75ecf1e68a966.tar.gz
Merged in default (pull request #468)
Migrate more things to XDG directories. Approved-by: Gary Kramlich
-rw-r--r--ChangeLog.API5
-rw-r--r--libpurple/accounts.c4
-rw-r--r--libpurple/buddylist.c4
-rw-r--r--libpurple/core.c8
-rw-r--r--libpurple/media/backend-fs2.c2
-rw-r--r--libpurple/mediamanager.c2
-rw-r--r--libpurple/plugins/autoaccept.c2
-rw-r--r--libpurple/plugins/filectl.c23
-rw-r--r--libpurple/prefs.c4
-rw-r--r--libpurple/savedstatuses.c4
-rw-r--r--libpurple/smiley-custom.c4
-rw-r--r--libpurple/util.c6
-rw-r--r--libpurple/util.h3
13 files changed, 49 insertions, 22 deletions
diff --git a/ChangeLog.API b/ChangeLog.API
index f3a0f5034f..4690a66d52 100644
--- a/ChangeLog.API
+++ b/ChangeLog.API
@@ -535,6 +535,11 @@ version 3.0.0 (??/??/????):
* xmlnode_set_attrib_with_namespace
* xmlnode_set_attrib_with_prefix
+ Deprecated:
+ * purple_user_dir
+ * purple_util_write_data_to_file
+ * purple_util_read_xml_from_file
+
Pidgin:
Added:
* pidgin_create_webview
diff --git a/libpurple/accounts.c b/libpurple/accounts.c
index b9ed897a4a..207549296b 100644
--- a/libpurple/accounts.c
+++ b/libpurple/accounts.c
@@ -68,7 +68,7 @@ sync_accounts(void)
node = accounts_to_xmlnode();
data = purple_xmlnode_to_formatted_str(node, NULL);
- purple_util_write_data_to_file("accounts.xml", data, -1);
+ purple_util_write_data_to_config_file("accounts.xml", data, -1);
g_free(data);
purple_xmlnode_free(node);
}
@@ -543,7 +543,7 @@ load_accounts(void)
accounts_loaded = TRUE;
- node = purple_util_read_xml_from_file("accounts.xml", _("accounts"));
+ node = purple_util_read_xml_from_config_file("accounts.xml", _("accounts"));
if (node == NULL)
return;
diff --git a/libpurple/buddylist.c b/libpurple/buddylist.c
index 87595ecfb0..e6b17cd93e 100644
--- a/libpurple/buddylist.c
+++ b/libpurple/buddylist.c
@@ -412,7 +412,7 @@ purple_blist_sync(void)
node = blist_to_xmlnode();
data = purple_xmlnode_to_formatted_str(node, NULL);
- purple_util_write_data_to_file("blist.xml", data, -1);
+ purple_util_write_data_to_config_file("blist.xml", data, -1);
g_free(data);
purple_xmlnode_free(node);
}
@@ -631,7 +631,7 @@ load_blist(void)
blist_loaded = TRUE;
- purple = purple_util_read_xml_from_file("blist.xml", _("buddy list"));
+ purple = purple_util_read_xml_from_config_file("blist.xml", _("buddy list"));
if (purple == NULL)
return;
diff --git a/libpurple/core.c b/libpurple/core.c
index 6a3b8b191c..bf22616a9e 100644
--- a/libpurple/core.c
+++ b/libpurple/core.c
@@ -362,8 +362,16 @@ purple_core_migrate_to_xdg_base_dirs(void)
xdg_dir_exists = g_file_test(purple_data_dir(), G_FILE_TEST_EXISTS);
if (!xdg_dir_exists) {
MIGRATE_TO_XDG_DIR(purple_data_dir(), "certificates");
+ MIGRATE_TO_XDG_DIR(purple_data_dir(), "custom_smiley");
MIGRATE_TO_XDG_DIR(purple_data_dir(), "logs");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "accounts.xml");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "blist.xml");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "fs-codec.conf");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "fs-element.conf");
MIGRATE_TO_XDG_DIR(purple_config_dir(), "pounces.xml");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "prefs.xml");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "smileys.xml");
+ MIGRATE_TO_XDG_DIR(purple_config_dir(), "status.xml");
}
return TRUE;
diff --git a/libpurple/media/backend-fs2.c b/libpurple/media/backend-fs2.c
index 0e6e73178f..0d6f753421 100644
--- a/libpurple/media/backend-fs2.c
+++ b/libpurple/media/backend-fs2.c
@@ -1693,7 +1693,7 @@ create_session(PurpleMediaBackendFs2 *self, const gchar *sess_id,
return FALSE;
}
- filename = g_build_filename(purple_user_dir(), "fs-codec.conf", NULL);
+ filename = g_build_filename(purple_config_dir(), "fs-codec.conf", NULL);
codec_conf = fs_codec_list_from_keyfile(filename, &err);
g_free(filename);
diff --git a/libpurple/mediamanager.c b/libpurple/mediamanager.c
index 1d926115e5..f4efe87f13 100644
--- a/libpurple/mediamanager.c
+++ b/libpurple/mediamanager.c
@@ -320,7 +320,7 @@ purple_media_manager_get_pipeline(PurpleMediaManager *manager)
gst_bus_set_sync_handler(bus, gst_bus_sync_signal_handler, NULL, NULL);
gst_object_unref(bus);
- filename = g_build_filename(purple_user_dir(),
+ filename = g_build_filename(purple_config_dir(),
"fs-element.conf", NULL);
keyfile = g_key_file_new();
if (!g_key_file_load_from_file(keyfile, filename,
diff --git a/libpurple/plugins/autoaccept.c b/libpurple/plugins/autoaccept.c
index 351670a433..71968bc2bf 100644
--- a/libpurple/plugins/autoaccept.c
+++ b/libpurple/plugins/autoaccept.c
@@ -291,7 +291,7 @@ plugin_load(PurplePlugin *plugin, GError **error)
{
char *dirname;
- dirname = g_build_filename(purple_user_dir(), "autoaccept", NULL);
+ dirname = g_build_filename(g_get_user_special_dir(G_USER_DIRECTORY_DOWNLOAD), "autoaccept", NULL);
purple_prefs_add_none(PREF_PREFIX);
purple_prefs_add_string(PREF_PATH, dirname);
purple_prefs_add_bool(PREF_NOTIFY, TRUE);
diff --git a/libpurple/plugins/filectl.c b/libpurple/plugins/filectl.c
index cbdd8c7153..e9ff79b73c 100644
--- a/libpurple/plugins/filectl.c
+++ b/libpurple/plugins/filectl.c
@@ -40,12 +40,12 @@ void
run_commands()
{
GStatBuf finfo;
- char filename[MAXPATHLEN];
+ gchar *filename;
char buffer[1024];
char *command, *arg1, *arg2;
FILE *file;
- snprintf(filename, MAXPATHLEN, "%s" G_DIR_SEPARATOR_S "control", purple_user_dir());
+ filename = g_build_filename(purple_config_dir(), "control", NULL);
file = g_fopen(filename, "r+");
while (fgets(buffer, sizeof(buffer), file)) {
@@ -110,9 +110,10 @@ run_commands()
fclose(file);
- if (g_stat(filename, &finfo) != 0)
- return;
- mtime = finfo.st_mtime;
+ if (g_stat(filename, &finfo) == 0)
+ mtime = finfo.st_mtime;
+
+ g_free(filename);
}
/**
@@ -123,12 +124,14 @@ init_file()
{
/* most of this was taken from Bash v2.04 by the FSF */
GStatBuf finfo;
- char filename[MAXPATHLEN];
+ gchar *filename;
- snprintf(filename, MAXPATHLEN, "%s" G_DIR_SEPARATOR_S "control", purple_user_dir());
+ filename = g_build_filename(purple_config_dir(), "control", NULL);
if ((g_stat(filename, &finfo) == 0) && (finfo.st_size > 0))
run_commands();
+
+ g_free(filename);
}
/**
@@ -139,9 +142,9 @@ check_file()
{
/* most of this was taken from Bash v2.04 by the FSF */
GStatBuf finfo;
- char filename[MAXPATHLEN];
+ gchar *filename;
- snprintf(filename, MAXPATHLEN, "%s" G_DIR_SEPARATOR_S "control", purple_user_dir());
+ filename = g_build_filename(purple_config_dir(), "control", NULL);
if ((g_stat(filename, &finfo) == 0) && (finfo.st_size > 0))
{
@@ -151,6 +154,8 @@ check_file()
}
}
+ g_free(filename);
+
return TRUE;
}
diff --git a/libpurple/prefs.c b/libpurple/prefs.c
index 07fd5db04e..0f3706ea9e 100644
--- a/libpurple/prefs.c
+++ b/libpurple/prefs.c
@@ -242,7 +242,7 @@ sync_prefs(void)
node = prefs_to_xmlnode();
data = purple_xmlnode_to_formatted_str(node, NULL);
- purple_util_write_data_to_file("prefs.xml", data, -1);
+ purple_util_write_data_to_config_file("prefs.xml", data, -1);
g_free(data);
purple_xmlnode_free(node);
}
@@ -424,7 +424,7 @@ purple_prefs_load()
return uiop->load();
}
- filename = g_build_filename(purple_user_dir(), "prefs.xml", NULL);
+ filename = g_build_filename(purple_config_dir(), "prefs.xml", NULL);
if (!filename) {
prefs_loaded = TRUE;
diff --git a/libpurple/savedstatuses.c b/libpurple/savedstatuses.c
index 9b777d4ebf..a54206b31c 100644
--- a/libpurple/savedstatuses.c
+++ b/libpurple/savedstatuses.c
@@ -339,7 +339,7 @@ sync_statuses(void)
node = statuses_to_xmlnode();
data = purple_xmlnode_to_formatted_str(node, NULL);
- purple_util_write_data_to_file("status.xml", data, -1);
+ purple_util_write_data_to_config_file("status.xml", data, -1);
g_free(data);
purple_xmlnode_free(node);
}
@@ -527,7 +527,7 @@ load_statuses(void)
statuses_loaded = TRUE;
- statuses = purple_util_read_xml_from_file("status.xml", _("saved statuses"));
+ statuses = purple_util_read_xml_from_config_file("status.xml", _("saved statuses"));
if (statuses == NULL)
return;
diff --git a/libpurple/smiley-custom.c b/libpurple/smiley-custom.c
index 610bfa2bd0..9e60a3b2a1 100644
--- a/libpurple/smiley-custom.c
+++ b/libpurple/smiley-custom.c
@@ -300,9 +300,9 @@ _purple_smiley_custom_init(void)
{
gint ret;
- smileys_dir = g_build_filename(purple_user_dir(),
+ smileys_dir = g_build_filename(purple_data_dir(),
SMILEYS_DEFAULT_FOLDER, NULL);
- smileys_index = g_build_filename(purple_user_dir(),
+ smileys_index = g_build_filename(purple_config_dir(),
SMILEYS_INDEX_FILE, NULL);
smileys_list = purple_smiley_list_new();
diff --git a/libpurple/util.c b/libpurple/util.c
index 99addb464f..d60ca6e2a8 100644
--- a/libpurple/util.c
+++ b/libpurple/util.c
@@ -2948,7 +2948,9 @@ purple_move_to_xdg_base_dir(const char *purple_xdg_dir, char *path)
gchar *old_path;
gboolean old_path_exists;
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
old_path = g_build_filename(purple_user_dir(), path, NULL);
+G_GNUC_END_IGNORE_DEPRECATIONS
old_path_exists = g_file_test(old_path, G_FILE_TEST_EXISTS);
if (old_path_exists) {
int rename_res;
@@ -3020,7 +3022,9 @@ purple_util_write_data_to_file_common(const char *dir, const char *filename, con
gboolean
purple_util_write_data_to_file(const char *filename, const char *data, gssize size)
{
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
const char *user_dir = purple_user_dir();
+G_GNUC_END_IGNORE_DEPRECATIONS
gboolean ret = purple_util_write_data_to_file_common(user_dir, filename, data, size);
return ret;
@@ -3083,7 +3087,9 @@ purple_util_write_data_to_file_absolute(const char *filename_full, const char *d
PurpleXmlNode *
purple_util_read_xml_from_file(const char *filename, const char *description)
{
+G_GNUC_BEGIN_IGNORE_DEPRECATIONS
return purple_xmlnode_from_file(purple_user_dir(), filename, description, "util");
+G_GNUC_END_IGNORE_DEPRECATIONS
}
PurpleXmlNode *
diff --git a/libpurple/util.h b/libpurple/util.h
index 884382cb34..20c1da0654 100644
--- a/libpurple/util.h
+++ b/libpurple/util.h
@@ -752,6 +752,7 @@ const gchar *purple_home_dir(void);
* Deprecated: Use purple_cache_dir(), purple_config_dir() or
* purple_data_dir() instead.
*/
+G_DEPRECATED_FOR(purple_cache_dir' or 'purple_config_dir' or 'purple_data_dir)
const char *purple_user_dir(void);
/**
@@ -845,6 +846,7 @@ int purple_build_dir(const char *path, int mode);
* purple_util_write_data_to_config_file() or
* purple_util_write_data_to_data_file() instead.
*/
+G_DEPRECATED_FOR(purple_util_write_data_to_cache_file' or 'purple_util_write_data_to_config_file' or 'purple_util_write_data_to_data_file)
gboolean purple_util_write_data_to_file(const char *filename, const char *data,
gssize size);
@@ -938,6 +940,7 @@ purple_util_write_data_to_file_absolute(const char *filename_full, const char *d
* purple_util_read_xml_from_config_file() or
* purple_util_read_xml_from_data_file() instead.
*/
+G_DEPRECATED_FOR(purple_util_read_xml_from_cache_file' or 'purple_util_read_xml_from_config_file' or 'purple_util_read_xml_from_data_file)
PurpleXmlNode *purple_util_read_xml_from_file(const char *filename,
const char *description);