diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | configure.in | 2 | ||||
-rw-r--r-- | libsylph/filter.c | 6 | ||||
-rw-r--r-- | libsylph/filter.h | 2 | ||||
-rw-r--r-- | libsylph/imap.c | 2 |
5 files changed, 16 insertions, 3 deletions
@@ -1,5 +1,12 @@ 2007-01-17 + * libsylph/filter.c: filter_apply_msginfo(): return immediately if + procmsg_get_message_file() failed. + * libsylph/imap.c: imap_get_msg_list_full(): return NULL if + uncached_only. + +2007-01-17 + * libsylph/virtual.c: fixed virtual class structure. 2007-01-17 diff --git a/configure.in b/configure.in index 7f7fd7a5..016e4687 100644 --- a/configure.in +++ b/configure.in @@ -6,7 +6,7 @@ PACKAGE=sylpheed dnl version number MAJOR_VERSION=2 MINOR_VERSION=3 -MICRO_VERSION=0 +MICRO_VERSION=99 INTERFACE_AGE=0 BINARY_AGE=0 EXTRA_VERSION=+svn diff --git a/libsylph/filter.c b/libsylph/filter.c index e33c3554..c7f60f29 100644 --- a/libsylph/filter.c +++ b/libsylph/filter.c @@ -1,6 +1,6 @@ /* * LibSylph -- E-Mail client library - * Copyright (C) 1999-2006 Hiroyuki Yamamoto + * Copyright (C) 1999-2007 Hiroyuki Yamamoto * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -100,6 +100,8 @@ gint filter_apply_msginfo(GSList *fltlist, MsgInfo *msginfo, if (!fltlist) return 0; file = procmsg_get_message_file(msginfo); + if (!file) + return -1; hlist = procheader_get_header_list_from_file(file); if (!hlist) { g_free(file); @@ -367,6 +369,8 @@ static gboolean filter_match_cond(FilterCond *cond, MsgInfo *msginfo, break; case FLT_COND_CMD_TEST: file = procmsg_get_message_file(msginfo); + if (!file) + return FALSE; cmdline = g_strconcat(cond->str_value, " \"", file, "\"", NULL); matched = (execute_command_line(cmdline, FALSE) == 0); g_free(cmdline); diff --git a/libsylph/filter.h b/libsylph/filter.h index df6255a4..9f0940be 100644 --- a/libsylph/filter.h +++ b/libsylph/filter.h @@ -1,6 +1,6 @@ /* * LibSylph -- E-Mail client library - * Copyright (C) 1999-2006 Hiroyuki Yamamoto + * Copyright (C) 1999-2007 Hiroyuki Yamamoto * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/libsylph/imap.c b/libsylph/imap.c index 9eda5599..f3856ce1 100644 --- a/libsylph/imap.c +++ b/libsylph/imap.c @@ -882,6 +882,8 @@ static GSList *imap_get_msg_list_full(Folder *folder, FolderItem *item, session = imap_session_get(folder); if (!session) { + if (uncached_only) + return NULL; mlist = procmsg_read_cache(item, FALSE); item->last_num = procmsg_get_last_num_in_msg_list(mlist); procmsg_set_flags(mlist, item); |