if (str)
return strlen(str);
else {
- debug_print("%s(%d) - invalid string %s\n", __FILE__, fline, expr);
+ debug_print("%s(%d) - invalid string %s\n", __FILE__, fline, expr?expr:"(null)");
return 0;
}
}
folder_find_item_from_identifier(action->destination);
if (!dest_folder) {
debug_print("*** folder not found '%s'\n",
- action->destination ?action->destination :"");
+ action->destination ?action->destination :"(null)");
return FALSE;
}
if (!dest_folder) {
debug_print("*** folder not found '%s'\n",
- action->destination ?action->destination :"");
+ action->destination ?action->destination :"(null)");
return FALSE;
}
val = tags_get_id_for_str(action->destination);
if (val == -1) {
debug_print("*** tag '%s' not found\n",
- action->destination ?action->destination :"");
+ action->destination ?action->destination :"(null)");
return FALSE;
}
procmsg_msginfo_set_flags(info, MSG_IGNORE_THREAD, 0);
return TRUE;
+ case MATCHACTION_WATCH:
+ procmsg_msginfo_set_flags(info, MSG_WATCH_THREAD, 0);
+ return TRUE;
+
case MATCHACTION_ADD_TO_ADDRESSBOOK:
{
AddressDataSource *book = NULL;
gboolean filter_message_by_msginfo(GSList *flist, MsgInfo *info, PrefsAccount* ac_prefs,
FilteringInvocationType context, gchar *extra_info)
{
+ gboolean ret;
+
if (prefs_common.enable_filtering_debug) {
gchar *tmp = _("undetermined");
}
} else
debug_filtering_session = FALSE;
- return filter_msginfo(flist, info, ac_prefs);
+
+ ret = filter_msginfo(flist, info, ac_prefs);
+ debug_filtering_session = FALSE;
+ return ret;
}
gchar *filteringaction_to_string(gchar *dest, gint destlen, FilteringAction *action)
case MATCHACTION_STOP:
case MATCHACTION_HIDE:
case MATCHACTION_IGNORE:
+ case MATCHACTION_WATCH:
case MATCHACTION_CLEAR_TAGS:
g_snprintf(dest, destlen, "%s", command_str);
return dest;