const gchar * file,
MsgFlags * flags);
static gint mh_add_msgs(Folder * folder,
- FolderItem * dest, GSList * file_list, MsgNumberList **newnum_list);
+ FolderItem * dest, GSList * file_list, GRelation *relation);
static gint mh_copy_msg(Folder * folder,
FolderItem * dest, MsgInfo * msginfo);
static gint mh_remove_msg(Folder * folder, FolderItem * item, gint num);
mh_create_folder,
mh_rename_folder,
mh_remove_folder,
+ NULL,
mh_get_num_list,
NULL,
NULL,
gint ret;
GSList file_list;
MsgFileInfo fileinfo;
- MsgNumberList *newnum_list = NULL;
g_return_val_if_fail(file != NULL, -1);
file_list.data = &fileinfo;
file_list.next = NULL;
- ret = mh_add_msgs(folder, dest, &file_list, &newnum_list);
- g_slist_free(newnum_list);
+ ret = mh_add_msgs(folder, dest, &file_list, NULL);
return ret;
}
gint mh_add_msgs(Folder *folder, FolderItem *dest, GSList *file_list,
- MsgNumberList **newnum_list)
+ GRelation *relation)
{
gchar *destfile;
GSList *cur;
return -1;
}
}
- *newnum_list = g_slist_append(*newnum_list, GINT_TO_POINTER(dest->last_num + 1));
+ if (relation != NULL)
+ g_relation_insert(relation, fileinfo, GINT_TO_POINTER(dest->last_num + 1));
g_free(destfile);
dest->last_num++;