diff options
Diffstat (limited to 'cloud_mdir_sync/main.py')
-rw-r--r-- | cloud_mdir_sync/main.py | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/cloud_mdir_sync/main.py b/cloud_mdir_sync/main.py index d085dda..1c86b4a 100644 --- a/cloud_mdir_sync/main.py +++ b/cloud_mdir_sync/main.py @@ -58,9 +58,9 @@ async def update_cloud_from_local(cfg: config.Config, async def synchronize_mail(cfg: config.Config): """Main synchronizing loop""" cfg.web_app = oauth.WebServer() + cfg.async_tasks.append(cfg.web_app) try: - await cfg.web_app.go() - + await asyncio_complete(*(I.go() for I in cfg.async_tasks)) await asyncio_complete(*(mbox.setup_mbox() for mbox in cfg.all_mboxes())) @@ -94,10 +94,8 @@ async def synchronize_mail(cfg: config.Config): cfg.msgdb.cleanup_msgs(msgs) cfg.logger.debug("Changed event, looping") finally: - await asyncio_complete(*(domain.close() - for domain in cfg.domains.values())) - cfg.domains = {} - await cfg.web_app.close() + for I in cfg.async_tasks: + await I.close() def main(): |