diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2005-05-31 06:36:11 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2005-05-31 06:36:11 +0000 |
commit | 2737d9e365fc0ad5d6314da0b27ab594ebdaad7e (patch) | |
tree | 214d1d75a0c24c7e9f7b88a935b7eb157a6d9cfb /src/folderview.c | |
parent | f77f90cbab5a6a6123c878179419c2c512ea957d (diff) |
fixed a bug that caused crash if FolderView::selected is NULL.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@301 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/folderview.c')
-rw-r--r-- | src/folderview.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/folderview.c b/src/folderview.c index 2f6ffc2f..ad01fede 100644 --- a/src/folderview.c +++ b/src/folderview.c @@ -674,6 +674,26 @@ FolderItem *folderview_get_selected_item(FolderView *folderview) return item; } +void folderview_set_opened_item(FolderView *folderview, FolderItem *item) +{ + GtkTreeModel *model = GTK_TREE_MODEL(folderview->store); + GtkTreeIter iter; + GtkTreePath *path; + + gtk_tree_row_reference_free(folderview->opened); + folderview->opened = NULL; + + if (!item) + return; + + if (gtkut_tree_model_find_by_column_data + (model, &iter, NULL, COL_FOLDER_ITEM, item)) { + path = gtk_tree_model_get_path(model, &iter); + folderview->opened = gtk_tree_row_reference_new(model, path); + gtk_tree_path_free(path); + } +} + void folderview_update_opened_msg_num(FolderView *folderview) { GtkTreePath *path; |