Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37596350
en ru br
ALT Linux repos
S:2.14.12-alt1
5.0: 2.6.1-alt2
4.1: 2.6.1-alt1.M41.1
4.0: 2.5.6-alt0.M40.1

Group :: Networking/Instant messaging
RPM: pidgin

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Patch: pidgin-2.6.1-alt-confdir.patch
Download


--- pidgin-2.6.1/libpurple/core.c.alt	2009-08-20 12:22:09 +0400
+++ pidgin-2.6.1/libpurple/core.c	2009-08-20 13:42:33 +0400
@@ -407,8 +407,8 @@ gboolean
 purple_core_migrate(void)
 {
 	const char *user_dir = purple_user_dir();
-	char *old_user_dir = g_strconcat(purple_home_dir(),
-	                                 G_DIR_SEPARATOR_S ".gaim", NULL);
+	char *old_user_dir = g_strconcat(g_get_home_dir(),
+	                                 G_DIR_SEPARATOR_S ".purple", NULL);
 	char *status_file;
 	FILE *fp;
 	GDir *dir;
@@ -421,9 +421,13 @@ purple_core_migrate(void)
 
 	if (!g_file_test(old_user_dir, G_FILE_TEST_EXISTS))
 	{
-		/* ~/.gaim doesn't exist, so there's nothing to migrate. */
-		g_free(old_user_dir);
-		return TRUE;
+		old_user_dir = g_strconcat(g_get_home_dir(), G_DIR_SEPARATOR_S ".gaim", NULL);
+		if (!g_file_test(old_user_dir, G_FILE_TEST_EXISTS))
+		{
+			/* ~/.gaim doesn't exist, so there's nothing to migrate. */
+			g_free(old_user_dir);
+			return TRUE;
+		}
 	}
 
 	status_file = g_strconcat(user_dir, G_DIR_SEPARATOR_S "migrating", NULL);
@@ -536,8 +540,7 @@ purple_core_migrate(void)
 
 				logs_dir = g_build_filename(user_dir, "logs", NULL);
 
-				if (purple_strequal(link, "../.purple/logs") ||
-				    purple_strequal(link, logs_dir))
+				if (purple_strequal(link, logs_dir))
 				{
 					/* If the symlink points to the new directory, we're
 					 * likely just trying again after a failed migration,
@@ -634,7 +637,8 @@ purple_core_migrate(void)
 					if (g_file_test(icons_name, G_FILE_TEST_IS_DIR))
 					{
 						if (!move_and_symlink_dir(icons_name, icons_entry,
-						                          name, new_icons_dir, "../../.purple/icons"))
+						                          name, new_icons_dir,
+						                          g_strconcat(user_dir, G_DIR_SEPARATOR_S "icons", NULL)))
 						{
 							g_free(icons_name);
 							g_free(new_icons_dir);
@@ -659,7 +663,7 @@ purple_core_migrate(void)
 			else
 			{
 				/* All other directories are moved and symlinked. */
-				if (!move_and_symlink_dir(name, entry, old_user_dir, user_dir, "../.purple"))
+				if (!move_and_symlink_dir(name, entry, old_user_dir, user_dir, user_dir))
 				{
 					g_free(name);
 					g_dir_close(dir);
--- pidgin-2.6.1/libpurple/util.c.alt	2009-08-20 12:24:38 +0400
+++ pidgin-2.6.1/libpurple/util.c	2009-08-20 12:27:35 +0400
@@ -2626,7 +2626,7 @@ const char *
 purple_home_dir(void)
 {
 #ifndef _WIN32
-	return g_get_home_dir();
+	return g_get_user_config_dir();
 #else
 	return wpurple_data_dir();
 #endif
@@ -2639,7 +2639,7 @@ purple_user_dir(void)
 	if (custom_user_dir != NULL)
 		return custom_user_dir;
 	else if (!user_dir)
-		user_dir = g_build_filename(purple_home_dir(), ".purple", NULL);
+		user_dir = g_build_filename(purple_home_dir(), "purple", NULL);
 
 	return user_dir;
 }
 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin