diff options
author | Milan Crha <mcrha@redhat.com> | 2023-03-31 10:42:03 +0200 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2023-03-31 10:42:03 +0200 |
commit | c43b1d0c0c2f3831005c450b17926f9cb0743096 (patch) | |
tree | e71e2f43a30c01f75c86e0419e0e601e14afa972 | |
parent | 1100864cc45ef4e93f7b285bd5ce0d9f7d113bc7 (diff) | |
download | evolution-data-server-c43b1d0c0c2f3831005c450b17926f9cb0743096.tar.gz |
CamelFilterDriver: Unset info's headers only when folder has summary
Not every filtered folder has summary capability. Asking for a message
info for such folders results in a runtime warning. This one could be
seen when filtering for example POP3 messages.
-rw-r--r-- | src/camel/camel-filter-driver.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/camel/camel-filter-driver.c b/src/camel/camel-filter-driver.c index 4782ae9c0..585e2d1a5 100644 --- a/src/camel/camel-filter-driver.c +++ b/src/camel/camel-filter-driver.c @@ -1861,13 +1861,15 @@ camel_filter_driver_filter_folder (CamelFilterDriver *driver, if (cache) camel_uid_cache_save (cache); - /* Unset message headers on the infos, which are meant only for filtering, - which just finished, thus the memory can be freed now */ - for (i = 0; i < uids->len; i++) { - info = camel_folder_get_message_info (folder, uids->pdata[i]); - if (info) - camel_message_info_take_headers (info, NULL); - g_clear_object (&info); + if (camel_folder_has_summary_capability (folder)) { + /* Unset message headers on the infos, which are meant only for filtering, + which just finished, thus the memory can be freed now */ + for (i = 0; i < uids->len; i++) { + info = camel_folder_get_message_info (folder, uids->pdata[i]); + if (info) + camel_message_info_take_headers (info, NULL); + g_clear_object (&info); + } } if (driver->priv->defaultfolder) { |