diff options
author | fiaxh <git@lightrise.org> | 2020-04-21 16:25:21 +0200 |
---|---|---|
committer | fiaxh <git@lightrise.org> | 2020-04-21 16:25:21 +0200 |
commit | 7c4260eed718961874fc0ea665263ea2ce59338b (patch) | |
tree | 7d583974ebf797e7e827836176c87735a87c39f6 /plugins/omemo/src | |
parent | 3a8fef7b7b3c101c4bcb8cd3d7460a009c98a41e (diff) | |
download | dino-7c4260eed718961874fc0ea665263ea2ce59338b.tar.gz dino-7c4260eed718961874fc0ea665263ea2ce59338b.zip |
Remove features from service discovery module when detaching module from stream
fixes #179
fixes #812
Diffstat (limited to 'plugins/omemo/src')
-rw-r--r-- | plugins/omemo/src/jingle/jet_omemo.vala | 1 | ||||
-rw-r--r-- | plugins/omemo/src/protocol/stream_module.vala | 4 |
2 files changed, 4 insertions, 1 deletions
diff --git a/plugins/omemo/src/jingle/jet_omemo.vala b/plugins/omemo/src/jingle/jet_omemo.vala index 2ddf5d33..edca809c 100644 --- a/plugins/omemo/src/jingle/jet_omemo.vala +++ b/plugins/omemo/src/jingle/jet_omemo.vala @@ -26,6 +26,7 @@ public class Module : XmppStreamModule, Jet.EnvelopEncoding { } public override void detach(XmppStream stream) { + stream.get_module(ServiceDiscovery.Module.IDENTITY).remove_feature(stream, NS_URI); } public bool is_available(XmppStream stream, Jid full_jid) { diff --git a/plugins/omemo/src/protocol/stream_module.vala b/plugins/omemo/src/protocol/stream_module.vala index 83822ea2..ba6e409e 100644 --- a/plugins/omemo/src/protocol/stream_module.vala +++ b/plugins/omemo/src/protocol/stream_module.vala @@ -35,7 +35,9 @@ public class StreamModule : XmppStreamModule { stream.get_module(Pubsub.Module.IDENTITY).add_filtered_notification(stream, NODE_DEVICELIST, (stream, jid, id, node) => parse_device_list(stream, jid, id, node), null); } - public override void detach(XmppStream stream) {} + public override void detach(XmppStream stream) { + stream.get_module(Pubsub.Module.IDENTITY).remove_filtered_notification(stream, NODE_DEVICELIST); + } public async ArrayList<int32> request_user_devicelist(XmppStream stream, Jid jid) { var future = active_devicelist_requests[jid]; |