Fix start()ing users when initializing after startup

This commit is contained in:
Tulir Asokan
2018-02-10 13:22:21 +02:00
parent e5b145e8cf
commit 60dbb0d5c4
+8 -3
View File
@@ -279,13 +279,16 @@ class User:
user = DBUser.query.get(mxid)
if user:
return cls.from_db(user).start()
user = cls.from_db(user)
asyncio.ensure_future(user.start(), loop=cls.loop)
return user
if create:
user = cls(mxid)
cls.db.add(user.to_db())
cls.db.commit()
return user.start()
asyncio.ensure_future(user.start(), loop=cls.loop)
return user
return None
@@ -298,7 +301,9 @@ class User:
user = DBUser.query.filter(DBUser.tgid == tgid).one_or_none()
if user:
return cls.from_db(user).start()
user = cls.from_db(user)
asyncio.ensure_future(user.start(), loop=cls.loop)
return user
return None