diff options
-rw-r--r-- | camel/ChangeLog | 6 | ||||
-rw-r--r-- | camel/providers/local/camel-mbox-summary.c | 8 |
2 files changed, 12 insertions, 2 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog index c7a9da9176..a1980dd42c 100644 --- a/camel/ChangeLog +++ b/camel/ChangeLog @@ -1,3 +1,9 @@ +2001-07-20 Peter Williams <peterw@ximian.com> + + * providers/local/camel-mbox-summary.c (mbox_summary_sync): More + usage fixes for CamelException. Check our own exception for + summary_update and xfer it out if an error occurred. + 2001-07-20 JP Rosevear <jpr@ximian.com> * Pull up test fixes to get them building again diff --git a/camel/providers/local/camel-mbox-summary.c b/camel/providers/local/camel-mbox-summary.c index c24cf4133c..8a61d63ed1 100644 --- a/camel/providers/local/camel-mbox-summary.c +++ b/camel/providers/local/camel-mbox-summary.c @@ -829,6 +829,7 @@ static int mbox_summary_sync(CamelLocalSummary *cls, gboolean expunge, CamelFolderChangeInfo *changeinfo, CamelException *ex) { struct stat st; + CamelException internal_ex; CamelMboxSummary *mbs = (CamelMboxSummary *)cls; CamelFolderSummary *s = (CamelFolderSummary *)cls; int i, count; @@ -836,9 +837,12 @@ mbox_summary_sync(CamelLocalSummary *cls, gboolean expunge, CamelFolderChangeInf int ret; /* first, sync ourselves up, just to make sure */ - summary_update(cls, mbs->folder_size, changeinfo, ex); - if (camel_exception_is_set(ex)) + camel_exception_init (&internal_ex); + summary_update(cls, mbs->folder_size, changeinfo, &internal_ex); + if (camel_exception_is_set(&internal_ex)) { + camel_exception_xfer (ex, &internal_ex); return -1; + } count = camel_folder_summary_count(s); if (count == 0) |