From be3a464a004de4a56375bb211f57b21c6d87a78a Mon Sep 17 00:00:00 2001 From: Jesse Vincent Date: Wed, 20 Jan 2010 22:10:44 +0000 Subject: [PATCH] Fix a crash on swipe in the message list. Thanks to cketti. Fixes issue 1054 --- src/com/fsck/k9/activity/MessageList.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/com/fsck/k9/activity/MessageList.java b/src/com/fsck/k9/activity/MessageList.java index 563416128..6d6ec0489 100644 --- a/src/com/fsck/k9/activity/MessageList.java +++ b/src/com/fsck/k9/activity/MessageList.java @@ -1348,10 +1348,18 @@ public class MessageList boolean selected = (deltaX > 0); int position = mListView.pointToPosition((int)e1.getX(), (int)e1.getY()); - ((MessageInfoHolder) mAdapter.getItem(position)).selected = selected; - mSelectedCount += (selected ? 1 : -1); - mAdapter.notifyDataSetChanged(); - toggleBatchButtons(); + if (position != AdapterView.INVALID_POSITION) + { + MessageInfoHolder msgInfoHolder = (MessageInfoHolder) mAdapter.getItem(position); + + if (msgInfoHolder != null) + { + msgInfoHolder.selected = selected; + mSelectedCount += (selected ? 1 : -1); + mAdapter.notifyDataSetChanged(); + toggleBatchButtons(); + } + } } return false;