comparison libpurple/protocols/toc/toc.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 3cc856ca2338
children 6de09629f091
comparison
equal deleted inserted replaced
21120:0cc12e6909e2 21121:35b4f1dc4c8d
1793 1793
1794 if (ft->files == 1) { 1794 if (ft->files == 1) {
1795 ft->file = g_fopen(ft->filename, "w"); 1795 ft->file = g_fopen(ft->filename, "w");
1796 if (!ft->file) { 1796 if (!ft->file) {
1797 buf = g_strdup_printf(_("Could not open %s for writing!"), ft->filename); 1797 buf = g_strdup_printf(_("Could not open %s for writing!"), ft->filename);
1798 purple_notify_error(ft->gc, NULL, buf, strerror(errno)); 1798 purple_notify_error(ft->gc, NULL, buf, g_strerror(errno));
1799 g_free(buf); 1799 g_free(buf);
1800 purple_input_remove(ft->inpa); 1800 purple_input_remove(ft->inpa);
1801 close(source); 1801 close(source);
1802 g_free(ft->filename); 1802 g_free(ft->filename);
1803 g_free(ft->user); 1803 g_free(ft->user);
1810 ft->file = g_fopen(buf, "w"); 1810 ft->file = g_fopen(buf, "w");
1811 g_free(buf); 1811 g_free(buf);
1812 if (!ft->file) { 1812 if (!ft->file) {
1813 buf = g_strdup_printf("Could not open %s/%s for writing!", ft->filename, 1813 buf = g_strdup_printf("Could not open %s/%s for writing!", ft->filename,
1814 ft->hdr.name); 1814 ft->hdr.name);
1815 purple_notify_error(ft->gc, NULL, buf, strerror(errno)); 1815 purple_notify_error(ft->gc, NULL, buf, g_strerror(errno));
1816 g_free(buf); 1816 g_free(buf);
1817 purple_input_remove(ft->inpa); 1817 purple_input_remove(ft->inpa);
1818 close(source); 1818 close(source);
1819 g_free(ft->filename); 1819 g_free(ft->filename);
1820 g_free(ft->user); 1820 g_free(ft->user);