propagate from branch 'im.pidgin.pidgin' (head 580e3f26ad693931cf760798135667d9e438d789) cpw.resiak.disconnectreason

Sun, 11 Nov 2007 17:01:59 +0000

author
Will Thompson <resiak@pidgin.im>
date
Sun, 11 Nov 2007 17:01:59 +0000
branch
cpw.resiak.disconnectreason
changeset 21506
06bfd6118bc5
parent 21498
580e3f26ad69 (diff)
parent 21505
3a7d30bb776b (current diff)
child 21507
ef776d77f325

propagate from branch 'im.pidgin.pidgin' (head 580e3f26ad693931cf760798135667d9e438d789)
to branch 'im.pidgin.cpw.resiak.disconnectreason' (head 3a7d30bb776bbfb56f27d1ab1ed74ed13202eac9)

libpurple/protocols/gg/gg.c file | annotate | diff | comparison | revisions
--- a/finch/finch.pc.in	Sun Nov 11 14:19:55 2007 +0000
+++ b/finch/finch.pc.in	Sun Nov 11 17:01:59 2007 +0000
@@ -3,6 +3,7 @@
 libdir=@libdir@
 includedir=@includedir@
 datadir=@datadir@
+datarootdir=@datarootdir@
 sysconfdir=@sysconfdir@
 
 Name: Finch
--- a/libpurple/protocols/gg/gg.c	Sun Nov 11 14:19:55 2007 +0000
+++ b/libpurple/protocols/gg/gg.c	Sun Nov 11 17:01:59 2007 +0000
@@ -254,16 +254,14 @@
 /*
  */
 /* static void ggp_callback_buddylist_save_ok(PurpleConnection *gc, const char *file) {{{ */
-static void ggp_callback_buddylist_save_ok(PurpleConnection *gc, const char *file)
+static void ggp_callback_buddylist_save_ok(PurpleConnection *gc, const char *filename)
 {
 	PurpleAccount *account = purple_connection_get_account(gc);
 
-	FILE *fh;
 	char *buddylist = ggp_buddylist_dump(account);
-	gchar *msg;
 
 	purple_debug_info("gg", "Saving...\n");
-	purple_debug_info("gg", "file = %s\n", file);
+	purple_debug_info("gg", "file = %s\n", filename);
 
 	if (buddylist == NULL) {
 		purple_notify_info(account, _("Save Buddylist..."),
@@ -272,30 +270,18 @@
 		return;
 	}
 
-	if ((fh = g_fopen(file, "wb")) == NULL) {
-		msg = g_strconcat(_("Couldn't open file"), ": ", file, "\n", NULL);
-		purple_debug_error("gg", "Could not open file: %s\n", file);
-		purple_notify_error(account, _("Couldn't open file"), msg, NULL);
-		g_free(msg);
-		g_free(buddylist);
-		return;
+	if(purple_util_write_data_to_file_absolute(filename, buddylist, -1)) {
+		purple_notify_info(account, _("Save Buddylist..."),
+			 _("Buddylist saved successfully!"), NULL);
+	} else {
+		gchar *primary = g_strdup_printf(
+			_("Couldn't write buddy list for %s to %s"),
+			purple_account_get_username(account), filename);
+		purple_notify_error(account, _("Save Buddylist..."),
+			primary, NULL);
+		g_free(primary);
 	}
 
-	if (!fwrite(buddylist, sizeof(char), g_utf8_strlen(buddylist, -1), fh)) {
-		const gchar *err = g_strerror(errno);
-		gchar *title = g_strdup_printf(
-			_("Couldn't write buddylist to %s"), err);
-
-		purple_debug_error("gg", "Error writing %s: %s\n", file, err);
-		purple_notify_error(account, title, title, err);
-
-		g_free(title);
-	} else {
-		purple_notify_info(account, _("Save Buddylist..."),
-			 _("Buddylist saved successfully!"), NULL);
-	}
-
-	fclose(fh);
 	g_free(buddylist);
 }
 /* }}} */
--- a/libpurple/purple-uninstalled.pc.in	Sun Nov 11 14:19:55 2007 +0000
+++ b/libpurple/purple-uninstalled.pc.in	Sun Nov 11 17:01:59 2007 +0000
@@ -3,6 +3,7 @@
 libdir=@libdir@
 includedir=@includedir@
 datadir=@datadir@
+datarootdir=@datarootdir@
 sysconfdir=@sysconfdir@
 
 Name: libpurple
--- a/libpurple/purple.pc.in	Sun Nov 11 14:19:55 2007 +0000
+++ b/libpurple/purple.pc.in	Sun Nov 11 17:01:59 2007 +0000
@@ -3,8 +3,9 @@
 libdir=@libdir@
 includedir=@includedir@
 datadir=@datadir@
+datarootdir=@datarootdir@
 sysconfdir=@sysconfdir@
- 
+
 Name: libpurple
 Description: libpurple is a GLib-based instant messenger library.
 Version: @VERSION@
--- a/pidgin/pidgin-uninstalled.pc.in	Sun Nov 11 14:19:55 2007 +0000
+++ b/pidgin/pidgin-uninstalled.pc.in	Sun Nov 11 17:01:59 2007 +0000
@@ -3,6 +3,7 @@
 libdir=@libdir@
 includedir=@includedir@
 datadir=@datadir@
+datarootdir=@datarootdir@
 sysconfdir=@sysconfdir@
 
 Name: Pidgin
--- a/pidgin/pidgin.pc.in	Sun Nov 11 14:19:55 2007 +0000
+++ b/pidgin/pidgin.pc.in	Sun Nov 11 17:01:59 2007 +0000
@@ -3,6 +3,7 @@
 libdir=@libdir@
 includedir=@includedir@
 datadir=@datadir@
+datarootdir=@datarootdir@
 sysconfdir=@sysconfdir@
 
 Name: Pidgin

mercurial