aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-09-22 02:54:01 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2006-09-22 02:54:01 +0000
commit2d8727b6a7f307563bd59ad071f144564ae8d7c3 (patch)
treea1a4199863ac254db32f784434f534ac86bd8022
parentf855f6b88c0333c99c7c07862fabf713e94c0985 (diff)
fixed crash when summary was sorted by logical columns.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@1178 ee746299-78ed-0310-b773-934348b2243d
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.ja5
-rw-r--r--src/summaryview.c8
3 files changed, 15 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 1a38b843..3310770d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2006-09-22
+
+ * src/summaryview.c: fixed crash when summary was sorted by logical
+ columns.
+
2006-09-21
* version 2.2.8
diff --git a/ChangeLog.ja b/ChangeLog.ja
index 4ba0e6d3..acb28fd3 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,3 +1,8 @@
+2006-09-22
+
+ * src/summaryview.c: サマリが論理カラムでソートされていた場合に
+ クラッシュするのを修正。
+
2006-09-21
* version 2.2.8
diff --git a/src/summaryview.c b/src/summaryview.c
index 708a77c7..b626afc9 100644
--- a/src/summaryview.c
+++ b/src/summaryview.c
@@ -896,7 +896,8 @@ static void summary_unset_sort_column_id(SummaryView *summaryview)
GtkSortType order;
if (gtk_tree_sortable_get_sort_column_id
- (GTK_TREE_SORTABLE(summaryview->store), &id, &order)) {
+ (GTK_TREE_SORTABLE(summaryview->store), &id, &order) &&
+ id < N_SUMMARY_VISIBLE_COLS) {
GtkTreeViewColumn *column = summaryview->columns[id];
column->sort_column_id = -1;
gtk_tree_view_column_set_sort_indicator(column, FALSE);
@@ -2052,13 +2053,14 @@ void summary_sort(SummaryView *summaryview,
gtk_tree_sortable_set_sort_column_id(sortable, col_type,
(GtkSortType)sort_type);
- if (prev_col_type != -1 && col_type != prev_col_type) {
+ if (prev_col_type != -1 && col_type != prev_col_type &&
+ prev_col_type < N_SUMMARY_VISIBLE_COLS) {
column = summaryview->columns[prev_col_type];
column->sort_column_id = -1;
gtk_tree_view_column_set_sort_indicator(column, FALSE);
}
if (col_type != S_COL_MARK && col_type != S_COL_UNREAD &&
- col_type != S_COL_MIME) {
+ col_type != S_COL_MIME && col_type < N_SUMMARY_VISIBLE_COLS) {
column = summaryview->columns[col_type];
column->sort_column_id = col_type;
gtk_tree_view_column_set_sort_indicator(column, TRUE);