src/gtkstatusbox.c

changeset 13012
402bd07464a7
parent 12932
63d706361608
child 13023
6c85f34839bf
--- a/src/gtkstatusbox.c	Mon Jan 23 04:25:04 2006 +0000
+++ b/src/gtkstatusbox.c	Mon Jan 23 04:54:37 2006 +0000
@@ -1067,9 +1067,17 @@
 
 		if (changed)
 		{
-			/* Create a new transient saved status */
-			saved_status = gaim_savedstatus_new(NULL, GPOINTER_TO_INT(data));
-			gaim_savedstatus_set_message(saved_status, message);
+			/* If we've used this type+message before, lookup the transient status */
+			saved_status = gaim_savedstatus_find_by_type_and_message(
+										GPOINTER_TO_INT(data), message);
+
+
+			/* If this type+message is unique then create a new transient saved status */
+			if (saved_status == NULL)
+			{
+				saved_status = gaim_savedstatus_new(NULL, GPOINTER_TO_INT(data));
+				gaim_savedstatus_set_message(saved_status, message);
+			}
 
 			/* Set the status for each account */
 			gaim_savedstatus_activate(saved_status);

mercurial