aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog6
-rw-r--r--mail/mail-folder-cache.c34
2 files changed, 11 insertions, 29 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 76d6dc6664..c502ff40f9 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,5 +1,11 @@
2001-08-06 Jason Leach <jleach@ximian.com>
+ * mail-folder-cache.c (make_folder_name): Removed this function,
+ it's not needed anymore.
+ (mail_folder_cache_note_folderinfo): Initialize mfi->unread to 0
+ always, so the shell won't get sent a random int for vtrash or
+ potentially other folders.
+
* message-list.c (message_list_select): Fix a minor glitch with
how it started a backwards wraparound at the 2nd to last message,
skipping the very last message.
diff --git a/mail/mail-folder-cache.c b/mail/mail-folder-cache.c
index 6c71762dbe..208b231e40 100644
--- a/mail/mail-folder-cache.c
+++ b/mail/mail-folder-cache.c
@@ -132,30 +132,6 @@ get_folder_info (const gchar *uri)
/* call with the folders locked */
static gchar *
-make_folder_name (mail_folder_info *mfi)
-{
- GString *work;
- gchar *ret;
-
- work = g_string_new (mfi->name);
-
- /* the way the logic is now, an outbox folder simply doesn't have
- * its unread count displayed. Makes sense to me at the moment. */
-
- if (mfi->flags & MAIL_FIF_FOLDER_VALID && mfi->folder == outbox_folder &&
- mfi->flags & MAIL_FIF_TOTAL_VALID && mfi->total) {
- g_string_sprintfa (work, " (%d unsent)", mfi->total);
- } else if (mfi->flags & MAIL_FIF_UNREAD_VALID && mfi->unread)
- g_string_sprintfa (work, " (%d)", mfi->unread);
-
- ret = work->str;
- g_string_free (work, FALSE);
- return ret;
-}
-
-/* call with the folders locked */
-
-static gchar *
make_folder_status (mail_folder_info *mfi)
{
gboolean set_one = FALSE;
@@ -197,7 +173,7 @@ static gboolean
update_idle (gpointer user_data)
{
mail_folder_info *mfi = (mail_folder_info *) user_data;
- gchar *f_name, *f_status;
+ gchar *f_status;
gchar *uri, *path;
mfiui info;
mfium mode;
@@ -226,7 +202,6 @@ update_idle (gpointer user_data)
/* Get the display string */
- f_name = make_folder_name (mfi);
f_status = make_folder_status (mfi);
/* Set the value */
@@ -306,9 +281,7 @@ update_idle (gpointer user_data)
/* Cleanup */
g_free (uri);
- if (path)
- g_free (path);
- g_free (f_name);
+ g_free (path);
g_free (f_status);
return FALSE;
}
@@ -686,6 +659,9 @@ mail_folder_cache_note_folderinfo (const gchar *uri, CamelFolderInfo *fi)
mfi->unread = fi->unread_message_count;
mfi->flags |= MAIL_FIF_UNREAD_VALID;
}
+ else {
+ mfi->unread = 0;
+ }
if (!(mfi->flags & MAIL_FIF_NAME_VALID)) {
d(g_message("-> setting name %s", fi->name));