Revision 710 src/summaryview.c

summaryview.c (revision 710)
3835 3835

  
3836 3836
	if (fltinfo->actions[FLT_ACTION_MOVE] ||
3837 3837
	    fltinfo->actions[FLT_ACTION_COPY] ||
3838
	    fltinfo->actions[FLT_ACTION_DELETE])
3838
	    fltinfo->actions[FLT_ACTION_DELETE] ||
3839
	    fltinfo->actions[FLT_ACTION_MARK_READ])
3839 3840
		summaryview->filtered++;
3840 3841

  
3842
	if (msginfo->flags.perm_flags != fltinfo->flags.perm_flags) {
3843
		msginfo->flags = fltinfo->flags;
3844
		summary_set_row(summaryview, iter, msginfo);
3845
		if (MSG_IS_IMAP(msginfo->flags)) {
3846
			if (fltinfo->actions[FLT_ACTION_MARK_READ])
3847
				imap_msg_unset_perm_flags(msginfo,
3848
							  MSG_NEW|MSG_UNREAD);
3849
		}
3850
	}
3851

  
3841 3852
	if (fltinfo->actions[FLT_ACTION_MOVE] && fltinfo->move_dest)
3842 3853
		summary_move_row_to(summaryview, iter, fltinfo->move_dest);
3843 3854
	else if (fltinfo->actions[FLT_ACTION_DELETE])
......
3958 3969

  
3959 3970
	ret = filter_action_exec(&rule, msginfo, file, fltinfo);
3960 3971

  
3972
	if (ret == 0 && MSG_IS_UNREAD(msginfo->flags)) {
3973
		summary_mark_row_as_read(summaryview, iter);
3974
		if (MSG_IS_IMAP(msginfo->flags))
3975
			imap_msg_unset_perm_flags
3976
				(msginfo, MSG_NEW | MSG_UNREAD);
3977
	}
3961 3978
	if (ret == 0 && fltinfo->actions[FLT_ACTION_MOVE] && fltinfo->move_dest)
3962 3979
		summary_move_row_to(summaryview, iter, fltinfo->move_dest);
3963 3980

  

Also available in: Unified diff