/pidgin/main: 5a740d40503d: Pulling default in again

Gary Kramlich <[email protected]>
Newsgroups gmane.comp.gnome.gaim.cvs
Message-ID <[email protected]>
Changeset: 5a740d40503d8b740e002bedfc4d86095e5b1da6
Author:	 Gary Kramlich <[email protected]>
Date:	 2015-12-29 21:48 -0600
Branch:	 replace-nm-with-gio
URL: https://hg.pidgin.im/pidgin/main/rev/5a740d40503d

Description:

Pulling default in again

diffstat:

 ChangeLog                        |   2 ++
 libpurple/plugins/codeinline.c   |  12 ++++--------
 libpurple/plugins/signals-test.c |   8 ++++----
 libpurple/savedstatuses.c        |   6 ++++--
 4 files changed, 14 insertions(+), 14 deletions(-)

diffs (86 lines):

diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -12,6 +12,8 @@ version 3.0.0 (??/??/????):
 	  non-native plugin support.
 	* Removed flags for manually configuring GnuTLS and NSS. They are now only
 	  recognized through pkg-config. (Michael McConville)
+	* Fixed an issue where transient startup statuses could be deleted
+	  (Jakub Adam) (#16762)
 
 	libpurple:
 	* Specify a different set of encryption ciphers for TLS connections when
diff --git a/libpurple/plugins/codeinline.c b/libpurple/plugins/codeinline.c
--- a/libpurple/plugins/codeinline.c
+++ b/libpurple/plugins/codeinline.c
@@ -41,15 +41,11 @@ outgoing_msg_common(const char *message)
   return g_strjoinv("</font>", ms);
 }
 
-static gboolean outgoing_msg_cb1(PurpleAccount *account, const char *who, char **message,
-					PurpleConversation *conv, PurpleMessageFlags flags, gpointer null)
+static gboolean outgoing_msg_cb1(PurpleConversation *conv, PurpleMessage *msg,
+	gpointer null)
 {
-	char *m;
-
-	m = outgoing_msg_common(*message);
-	g_free(*message);
-	*message = m;
-
+	purple_message_set_contents(msg,
+		outgoing_msg_common(purple_message_get_contents(msg)));
 	return FALSE;
 }
 
diff --git a/libpurple/plugins/signals-test.c b/libpurple/plugins/signals-test.c
--- a/libpurple/plugins/signals-test.c
+++ b/libpurple/plugins/signals-test.c
@@ -282,11 +282,11 @@ connection_error_cb(PurpleConnection *gc
  * Conversation subsystem signal callbacks
  **************************************************************************/
 static gboolean
-writing_im_msg_cb(PurpleAccount *account, const char *who, char **buffer,
-				PurpleConversation *conv, PurpleMessageFlags flags, void *data)
+writing_im_msg_cb(PurpleConversation *conv, PurpleMessage *pmsg)
 {
-	purple_debug_misc("signals test", "writing-im-msg (%s, %s, %s)\n",
-					purple_account_get_username(account), purple_conversation_get_name(conv), *buffer);
+	purple_debug_misc("signals test", "writing-im-msg (%s, %s)\n",
+		purple_conversation_get_name(conv),
+		purple_message_get_contents(pmsg));
 
 	return FALSE;
 
diff --git a/libpurple/savedstatuses.c b/libpurple/savedstatuses.c
--- a/libpurple/savedstatuses.c
+++ b/libpurple/savedstatuses.c
@@ -188,16 +188,18 @@ static void
 remove_old_transient_statuses(void)
 {
 	GList *l, *next;
-	PurpleSavedStatus *saved_status, *current_status;
+	PurpleSavedStatus *saved_status, *startup_status, *current_status;
 	int count;
 	time_t creation_time;
 
+	startup_status = purple_savedstatus_get_startup();
 	current_status = purple_savedstatus_get_current();
 
 	/*
 	 * Iterate through the list of saved statuses.  Delete all
 	 * transient statuses except for the first MAX_TRANSIENTS
 	 * (remember, the saved statuses are already sorted by popularity).
+	 * We should also keep the startup status, if any is set.
 	 */
 	count = 0;
 	for (l = saved_statuses; l != NULL; l = next)
@@ -208,7 +210,7 @@ remove_old_transient_statuses(void)
 		{
 			if (count == MAX_TRANSIENTS)
 			{
-				if (saved_status != current_status)
+				if (saved_status != current_status && saved_status != startup_status)
 				{
 					saved_statuses = g_list_remove(saved_statuses, saved_status);
 					creation_time = purple_savedstatus_get_creation_time(saved_status);

_______________________________________________
Commits mailing list
[email protected]
https://pidgin.im/cgi-bin/mailman/listinfo/commits
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.