aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-component.c
diff options
context:
space:
mode:
Diffstat (limited to 'mail/mail-component.c')
-rw-r--r--mail/mail-component.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/mail/mail-component.c b/mail/mail-component.c
index 1faa15068d..1f01ef691b 100644
--- a/mail/mail-component.c
+++ b/mail/mail-component.c
@@ -481,24 +481,18 @@ impl_sendAndReceive (PortableServer_Servant servant, CORBA_Environment *ev)
static gboolean
impl_upgradeFromVersion (PortableServer_Servant servant, short major, short minor, short revision, CORBA_Environment *ev)
{
+ MailComponent *component;
CamelException ex;
- camel_exception_init (&ex);
+ component = mail_component_peek ();
- switch (major) {
- case 1:
- switch (minor) {
- case 0:
- case 2:
- case 4:
- em_migrate (mail_component_peek (), &ex);
- break;
- }
- break;
+ camel_exception_init (&ex);
+ if (em_migrate (component->priv->base_directory, major, minor, revision, &ex) == -1) {
+ /* FIXME: report errors? */
+ camel_exception_clear (&ex);
+ return FALSE;
}
- camel_exception_clear (&ex);
-
return TRUE;
}