diff options
author | Jeffrey Stedfast <fejj@ximian.com> | 2004-02-26 04:11:07 +0800 |
---|---|---|
committer | Jeffrey Stedfast <fejj@src.gnome.org> | 2004-02-26 04:11:07 +0800 |
commit | 6db6379e350eb77cd0b099bc97c43dee1a869ce3 (patch) | |
tree | da6ce37ba1bf76be55c5471e8962c6a6fe4c58f5 | |
parent | 82355d5100fddbfd0646e73db7d1105d75f44e0f (diff) | |
download | gsoc2013-evolution-6db6379e350eb77cd0b099bc97c43dee1a869ce3.tar.gz gsoc2013-evolution-6db6379e350eb77cd0b099bc97c43dee1a869ce3.tar.zst gsoc2013-evolution-6db6379e350eb77cd0b099bc97c43dee1a869ce3.zip |
Free the uids *after* reporting Complete, otherwise we get an FMR if our
2004-02-25 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-driver.c (camel_filter_driver_filter_folder): Free
the uids *after* reporting Complete, otherwise we get an FMR if
our caller didn't pass in the uids.
* camel-sasl-gssapi.c (gssapi_challenge): #ifdef out another
gss_release_buffer() call as this function causes memory
corruption if using Heimdal's implementation of Kerberos5. Yay
Heimdal.
svn path=/trunk/; revision=24872
-rw-r--r-- | camel/ChangeLog | 11 | ||||
-rw-r--r-- | camel/camel-filter-driver.c | 6 | ||||
-rw-r--r-- | camel/camel-sasl-gssapi.c | 2 |
3 files changed, 16 insertions, 3 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index d8063fa667..1932b03d14 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,14 @@ +2004-02-25 Jeffrey Stedfast <fejj@ximian.com> + + * camel-filter-driver.c (camel_filter_driver_filter_folder): Free + the uids *after* reporting Complete, otherwise we get an FMR if + our caller didn't pass in the uids. + + * camel-sasl-gssapi.c (gssapi_challenge): #ifdef out another + gss_release_buffer() call as this function causes memory + corruption if using Heimdal's implementation of Kerberos5. Yay + Heimdal. + 2004-02-25 <rodo@ximian.com> * camel-folder.c (get_unread_message_count): do not avoid junk diff --git a/camel/camel-filter-driver.c b/camel/camel-filter-driver.c index 1282188eb0..33eae9e843 100644 --- a/camel/camel-filter-driver.c +++ b/camel/camel-filter-driver.c @@ -1250,9 +1250,6 @@ camel_filter_driver_filter_folder (CamelFilterDriver *driver, CamelFolder *folde camel_uid_cache_save_uid (cache, uids->pdata[i]); } - if (freeuids) - camel_folder_free_uids (folder, uids); - if (p->defaultfolder) { report_status (driver, CAMEL_FILTER_STATUS_PROGRESS, 100, _("Syncing folder")); camel_folder_sync (p->defaultfolder, FALSE, camel_exception_is_set (ex) ? NULL : ex); @@ -1261,6 +1258,9 @@ camel_filter_driver_filter_folder (CamelFilterDriver *driver, CamelFolder *folde if (i == uids->len) report_status (driver, CAMEL_FILTER_STATUS_END, 100, _("Complete")); + if (freeuids) + camel_folder_free_uids (folder, uids); + g_free (source_url); return status; diff --git a/camel/camel-sasl-gssapi.c b/camel/camel-sasl-gssapi.c index 4f15c43821..c32a3583a2 100644 --- a/camel/camel-sasl-gssapi.c +++ b/camel/camel-sasl-gssapi.c @@ -297,7 +297,9 @@ gssapi_challenge (CamelSasl *sasl, GByteArray *token, CamelException *ex) if ((((unsigned char *) outbuf.value)[0] & DESIRED_SECURITY_LAYER) != DESIRED_SECURITY_LAYER) { camel_exception_set (ex, CAMEL_EXCEPTION_SERVICE_CANT_AUTHENTICATE, _("Unsupported security layer.")); +#ifndef HAVE_HEIMDAL_KRB5 gss_release_buffer (&minor, &outbuf); +#endif return NULL; } |