Mercurial > libervia-backend
changeset 2882:0c54970d8e6e
plugin android: fixed csi_timer reset in setActive + crash on call of isActive before session initialisation
author | Goffi <goffi@goffi.org> |
---|---|
date | Fri, 05 Apr 2019 21:22:03 +0200 |
parents | 13e0a260e7b8 |
children | 7e8ca7c1429a |
files | sat/plugins/plugin_misc_android.py sat/plugins/plugin_xep_0352.py |
diffstat | 2 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/sat/plugins/plugin_misc_android.py Thu Mar 28 08:40:38 2019 +0100 +++ b/sat/plugins/plugin_misc_android.py Fri Apr 05 21:22:03 2019 +0200 @@ -245,5 +245,6 @@ return if self._csi_timer is not None: self._csi_timer.cancel() + self._csi_timer = None for client in self.host.getClients(C.PROF_KEY_ALL): self._csi.setActive(client)
--- a/sat/plugins/plugin_xep_0352.py Thu Mar 28 08:40:38 2019 +0100 +++ b/sat/plugins/plugin_xep_0352.py Fri Apr 05 21:22:03 2019 +0200 @@ -47,9 +47,16 @@ host.registerNamespace(u"csi", NS_CSI) def isActive(self, client): - if not client._xep_0352_enabled: + try: + if not client._xep_0352_enabled: + return True + return client._xep_0352_active + except AttributeError: + # _xep_0352_active can not be set if isActive is called before + # profileConnected has been called + log.debug(u"isActive called when XEP-0352 plugin has not yet set the " + u"attributes") return True - return client._xep_0352_active def profileConnected(self, client): if (NS_CSI, u'csi') in client.xmlstream.features: