diff libpurple/core.c @ 21121:35b4f1dc4c8d

replace most calls to strerror with calls to g_strerror. strerror will return a locale-specific string in the locale-specific encoding, which isn't guaranteed to be UTF-8. g_strerror will always return a UTF-8 string. I left gg and zephyr untouched, since gg doesn't include glib headers yet, and zephyr does something weird with a #define for strerror. Someone more familliar with those should take a look. And the win32 guys should check and see if I screwed something up, since they had strerror #defined to something else. This should fix #2247 (and maybe some mystery crashes)
author Nathan Walp <nwalp@pidgin.im>
date Sat, 03 Nov 2007 17:52:28 +0000
parents 6bf32c9e15a7
children 6de09629f091
line wrap: on
line diff
--- a/libpurple/core.c	Sat Nov 03 17:04:25 2007 +0000
+++ b/libpurple/core.c	Sat Nov 03 17:52:28 2007 +0000
@@ -378,7 +378,7 @@
 	if (g_rename(path, new_name))
 	{
 		purple_debug_error("core", "Error renaming %s to %s: %s. Please report this at http://developer.pidgin.im\n",
-		                   path, new_name, strerror(errno));
+		                   path, new_name, g_strerror(errno));
 		g_free(new_name);
 		return FALSE;
 	}
@@ -391,7 +391,7 @@
 	if (symlink(new_name, old_name))
 	{
 		purple_debug_warning("core", "Error symlinking %s to %s: %s. Please report this at http://developer.pidgin.im\n",
-		                     old_name, new_name, strerror(errno));
+		                     old_name, new_name, g_strerror(errno));
 	}
 	g_free(old_name);
 	g_free(new_name);
@@ -447,7 +447,7 @@
 		if (g_mkdir(user_dir, S_IRUSR | S_IWUSR | S_IXUSR) == -1)
 		{
 			purple_debug_error("core", "Error creating directory %s: %s. Please report this at http://developer.pidgin.im\n",
-			                   user_dir, strerror(errno));
+			                   user_dir, g_strerror(errno));
 			g_free(status_file);
 			g_free(old_user_dir);
 			return FALSE;
@@ -459,7 +459,7 @@
 	if (!(fp = g_fopen(status_file, "w")))
 	{
 		purple_debug_error("core", "Error opening file %s for writing: %s. Please report this at http://developer.pidgin.im\n",
-		                   status_file, strerror(errno));
+		                   status_file, g_strerror(errno));
 		g_free(status_file);
 		g_free(old_user_dir);
 		return FALSE;
@@ -517,7 +517,7 @@
 				{
 					char *name_utf8 = g_filename_to_utf8(name, -1, NULL, NULL, NULL);
 					purple_debug_error("core", "Error reading symlink %s: %s. Please report this at http://developer.pidgin.im\n",
-					                   name_utf8, strerror(errno));
+					                   name_utf8, g_strerror(errno));
 					g_free(name_utf8);
 					g_free(name);
 					g_dir_close(dir);
@@ -555,7 +555,7 @@
 				if (symlink(link, logs_dir))
 				{
 					purple_debug_error("core", "Error symlinking %s to %s: %s. Please report this at http://developer.pidgin.im\n",
-					                   logs_dir, link, strerror(errno));
+					                   logs_dir, link, g_strerror(errno));
 					g_free(link);
 					g_free(name);
 					g_free(logs_dir);
@@ -612,7 +612,7 @@
 					if (g_mkdir(new_icons_dir, S_IRUSR | S_IWUSR | S_IXUSR) == -1)
 					{
 						purple_debug_error("core", "Error creating directory %s: %s. Please report this at http://developer.pidgin.im\n",
-						                   new_icons_dir, strerror(errno));
+						                   new_icons_dir, g_strerror(errno));
 						g_free(new_icons_dir);
 						g_dir_close(icons_dir);
 						g_free(name);
@@ -675,7 +675,7 @@
 			if (!(fp = g_fopen(name, "rb")))
 			{
 				purple_debug_error("core", "Error opening file %s for reading: %s. Please report this at http://developer.pidgin.im\n",
-				                   name, strerror(errno));
+				                   name, g_strerror(errno));
 				g_free(name);
 				g_dir_close(dir);
 				g_free(status_file);
@@ -687,7 +687,7 @@
 			if (!(new_file = g_fopen(new_name, "wb")))
 			{
 				purple_debug_error("core", "Error opening file %s for writing: %s. Please report this at http://developer.pidgin.im\n",
-				                   new_name, strerror(errno));
+				                   new_name, g_strerror(errno));
 				fclose(fp);
 				g_free(new_name);
 				g_free(name);
@@ -706,7 +706,7 @@
 				if (size != sizeof(buf) && !feof(fp))
 				{
 					purple_debug_error("core", "Error reading %s: %s. Please report this at http://developer.pidgin.im\n",
-					                   name, strerror(errno));
+					                   name, g_strerror(errno));
 					fclose(new_file);
 					fclose(fp);
 					g_free(new_name);
@@ -720,7 +720,7 @@
 				if (!fwrite(buf, size, 1, new_file) && ferror(new_file) != 0)
 				{
 					purple_debug_error("core", "Error writing %s: %s. Please report this at http://developer.pidgin.im\n",
-					                   new_name, strerror(errno));
+					                   new_name, g_strerror(errno));
 					fclose(new_file);
 					fclose(fp);
 					g_free(new_name);
@@ -735,12 +735,12 @@
 			if (fclose(new_file))
 			{
 				purple_debug_error("core", "Error writing: %s: %s. Please report this at http://developer.pidgin.im\n",
-				                   new_name, strerror(errno));
+				                   new_name, g_strerror(errno));
 			}
 			if (fclose(fp))
 			{
 				purple_debug_warning("core", "Error closing %s: %s\n",
-				                     name, strerror(errno));
+				                     name, g_strerror(errno));
 			}
 			g_free(new_name);
 		}
@@ -754,7 +754,7 @@
 	if (g_unlink(status_file))
 	{
 		purple_debug_error("core", "Error unlinking file %s: %s. Please report this at http://developer.pidgin.im\n",
-		                   status_file, strerror(errno));
+		                   status_file, g_strerror(errno));
 		g_free(status_file);
 		return FALSE;
 	}