aboutsummaryrefslogtreecommitdiffstats
path: root/mail
diff options
context:
space:
mode:
Diffstat (limited to 'mail')
-rw-r--r--mail/ChangeLog12
-rw-r--r--mail/mail-callbacks.c12
-rw-r--r--mail/message-list.c28
3 files changed, 32 insertions, 20 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index 7be07110ed..18816239d5 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,3 +1,11 @@
+2001-08-09 Jeffrey Stedfast <fejj@ximian.com>
+
+ * message-list.c (mlfe_callback): Added a g_assert_not_reached() -
+ I'm hoping this will help us track down the "can't delete message
+ sometimes" (ie bug #6637 and friends) bugs that users have been
+ reporting. If herein lies the problem, then we can expect some
+ crashes and some good backtraces, hopefully.
+
2001-08-09 Peter Williams <peterw@ximian.com>
* folder-browser.c (on_key_press): The bonobo menu items now
@@ -9,8 +17,8 @@
Fixes bug #6918
- * folder-browser.c: Changed the "Store search as vFolder"
- menu item to "Create vFolder from Search".
+ * folder-browser.c: Changed the "Store search as vFolder" menu
+ item to "Create vFolder from Search".
2001-08-09 Jeffrey Stedfast <fejj@ximian.com>
diff --git a/mail/mail-callbacks.c b/mail/mail-callbacks.c
index fd4b47e8ed..99d7444c94 100644
--- a/mail/mail-callbacks.c
+++ b/mail/mail-callbacks.c
@@ -1199,7 +1199,7 @@ invert_selection (BonoboUIComponent *uih, void *user_data, const char *path)
/* flag all selected messages. Return number flagged */
static int
-flag_messages(FolderBrowser *fb, guint32 mask, guint32 set)
+flag_messages (FolderBrowser *fb, guint32 mask, guint32 set)
{
MessageList *ml = fb->message_list;
GPtrArray *uids;
@@ -1219,7 +1219,7 @@ flag_messages(FolderBrowser *fb, guint32 mask, guint32 set)
camel_folder_thaw (ml->folder);
g_ptr_array_free (uids, TRUE);
-
+
return i;
}
@@ -1547,15 +1547,15 @@ delete_msg (GtkWidget *button, gpointer user_data)
{
FolderBrowser *fb = FOLDER_BROWSER (user_data);
int deleted, row;
-
+
deleted = flag_messages (fb, CAMEL_MESSAGE_DELETED | CAMEL_MESSAGE_SEEN,
CAMEL_MESSAGE_DELETED | CAMEL_MESSAGE_SEEN);
-
+
/* Select the next message if we are only deleting one message */
- if (deleted == 1) {
+ if (deleted) {
row = e_tree_row_of_node (fb->message_list->tree,
e_tree_get_cursor (fb->message_list->tree));
-
+
/* If this is the last message and deleted messages
are hidden, select the previous */
if ((row+1 == e_tree_row_count (fb->message_list->tree))
diff --git a/mail/message-list.c b/mail/message-list.c
index ac5595d063..c9bbcf2980 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -2016,23 +2016,23 @@ on_click (ETree *tree, gint row, ETreePath path, gint col, GdkEvent *event, Mess
flag = CAMEL_MESSAGE_FLAGGED;
else
return FALSE;
-
- info = get_message_info(list, path);
+
+ info = get_message_info (list, path);
if (info == NULL) {
return FALSE;
}
-
+
/* If a message was marked as deleted and the user flags it as important, undelete it */
if (col == COL_FLAGGED && (info->flags & CAMEL_MESSAGE_DELETED))
flag |= CAMEL_MESSAGE_DELETED;
-
- camel_folder_set_message_flags(list->folder, camel_message_info_uid(info), flag, ~info->flags);
-
+
+ camel_folder_set_message_flags (list->folder, camel_message_info_uid (info), flag, ~info->flags);
+
if (flag == CAMEL_MESSAGE_SEEN && list->seen_id) {
gtk_timeout_remove (list->seen_id);
list->seen_id = 0;
}
-
+
return TRUE;
}
@@ -2047,12 +2047,16 @@ mlfe_callback (int row, gpointer user_data)
{
struct message_list_foreach_data *mlfe_data = user_data;
const char *uid;
-
- uid = get_message_uid (mlfe_data->message_list, e_tree_node_at_row(mlfe_data->message_list->tree, row));
+
+ uid = get_message_uid (mlfe_data->message_list,
+ e_tree_node_at_row (mlfe_data->message_list->tree, row));
if (uid) {
- mlfe_data->callback (mlfe_data->message_list,
- uid,
+ mlfe_data->callback (mlfe_data->message_list, uid,
mlfe_data->user_data);
+ } else {
+ /* FIXME: could this the cause of bug #6637 and friends? */
+ g_warning ("I wonder if this could be the cause of bug #6637 and friends?");
+ g_assert_not_reached ();
}
}
@@ -2062,7 +2066,7 @@ message_list_foreach (MessageList *message_list,
gpointer user_data)
{
struct message_list_foreach_data mlfe_data;
-
+
mlfe_data.message_list = message_list;
mlfe_data.callback = callback;
mlfe_data.user_data = user_data;