Mercurial > pidgin
diff src/savedstatuses.c @ 13012:e3b9c6c7bcf6
[gaim-migrate @ 15365]
Don't create duplicate transient statuses. So like, if you switch between
"Available" and "Away" a bunch of times and use the same message everywhere,
you'll only have one of each in your list of recent statuses
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 23 Jan 2006 04:54:37 +0000 |
parents | e5f780a6137b |
children | 22f8ed4e5294 |
line wrap: on
line diff
--- a/src/savedstatuses.c Mon Jan 23 04:25:04 2006 +0000 +++ b/src/savedstatuses.c Mon Jan 23 04:54:37 2006 +0000 @@ -798,6 +798,27 @@ return NULL; } +GaimSavedStatus * +gaim_savedstatus_find_by_type_and_message(GaimStatusPrimitive type, + const char *message) +{ + GList *iter; + GaimSavedStatus *status; + + for (iter = saved_statuses; iter != NULL; iter = iter->next) + { + status = (GaimSavedStatus *)iter->data; + if ((status->type == type) && + (((status->message == NULL) && (message == NULL)) || + ((status->message != NULL) && (message != NULL) && !strcmp(status->message, message)))) + { + return status; + } + } + + return NULL; +} + gboolean gaim_savedstatus_is_transient(const GaimSavedStatus *saved_status) {