diff options
Diffstat (limited to 'mail/mail-component.c')
-rw-r--r-- | mail/mail-component.c | 20 |
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; } |