diff options
Diffstat (limited to 'mail/message-list.c')
-rw-r--r-- | mail/message-list.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/mail/message-list.c b/mail/message-list.c index 9cd9bf5980..cda78f9e31 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -3528,6 +3528,7 @@ is_node_selectable (MessageList *message_list, static gchar * find_next_selectable (MessageList *message_list) { + ETreeTableAdapter *adapter; GNode *node; gint last; gint vrow_orig; @@ -3535,6 +3536,8 @@ find_next_selectable (MessageList *message_list) ETree *et = E_TREE (message_list); CamelMessageInfo *info; + adapter = e_tree_get_table_adapter (E_TREE (message_list)); + node = g_hash_table_lookup ( message_list->uid_nodemap, message_list->cursor_uid); if (node == NULL) @@ -3553,7 +3556,7 @@ find_next_selectable (MessageList *message_list) vrow = vrow_orig + 1; while (vrow < last) { - node = e_tree_node_at_row (et, vrow); + node = e_tree_table_adapter_node_at_row (adapter, vrow); info = get_message_info (message_list, node); if (info && is_node_selectable (message_list, info)) return g_strdup (camel_message_info_uid (info)); @@ -3565,7 +3568,7 @@ find_next_selectable (MessageList *message_list) vrow = vrow_orig - 1; while (vrow >= 0) { - node = e_tree_node_at_row (et, vrow); + node = e_tree_table_adapter_node_at_row (adapter, vrow); info = get_message_info (message_list, node); if (info && is_node_selectable (message_list, info)) return g_strdup (camel_message_info_uid (info)); |