From 158cff3098e9370696f9250a199c78e4f2d18ce0 Mon Sep 17 00:00:00 2001 From: Marvin W Date: Sat, 30 May 2026 16:10:36 +0200 Subject: Add JID interning --- plugins/omemo/src/dtls_srtp_verification_draft.vala | 4 ++-- plugins/omemo/src/logic/decrypt.vala | 4 ++-- plugins/omemo/src/logic/manager.vala | 2 +- plugins/omemo/src/ui/bad_messages_populator.vala | 2 +- plugins/omemo/src/ui/encryption_preferences_entry.vala | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) (limited to 'plugins') diff --git a/plugins/omemo/src/dtls_srtp_verification_draft.vala b/plugins/omemo/src/dtls_srtp_verification_draft.vala index c0b76524..09617a2a 100644 --- a/plugins/omemo/src/dtls_srtp_verification_draft.vala +++ b/plugins/omemo/src/dtls_srtp_verification_draft.vala @@ -99,7 +99,7 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { if (muji_node != null) { string muji_room = muji_node.get_attribute("room"); try { - Jid muji_jid = new Jid(muji_room); + Jid muji_jid = Jid.from_string(muji_room); if (device_id_by_muji_member.has_key(@"$(muji_jid.bare_jid)/$(iq.to)")) { device_id = device_id_by_muji_member[@"$(muji_jid.bare_jid)/$(iq.to)"]; } @@ -203,7 +203,7 @@ namespace Dino.Plugins.Omemo.DtlsSrtpVerificationDraft { try { string jid_attribute = item_node.get_attribute("jid"); if (jid_attribute == null) return; - real_jid = new Jid(jid_attribute); + real_jid = Jid.from_string(jid_attribute); } catch (InvalidJidError e) { // Ignore return; diff --git a/plugins/omemo/src/logic/decrypt.vala b/plugins/omemo/src/logic/decrypt.vala index 9e5b739a..2861b42f 100644 --- a/plugins/omemo/src/logic/decrypt.vala +++ b/plugins/omemo/src/logic/decrypt.vala @@ -95,7 +95,7 @@ namespace Dino.Plugins.Omemo { string identity_key = Base64.encode(msg.identity_key.serialize()); foreach (Row row in db.identity_meta.get_with_device_id(identity_id, data.sid).with(db.identity_meta.identity_key_public_base64, "=", identity_key)) { try { - possible_jids.add(new Jid(row[db.identity_meta.address_name])); + possible_jids.add(Jid.from_string(row[db.identity_meta.address_name])); } catch (InvalidJidError e) { warning("Ignoring invalid jid from database: %s", e.message); } @@ -104,7 +104,7 @@ namespace Dino.Plugins.Omemo { // If we don't know the device name (MUC history w/o MAM), test decryption with all keys with fitting device id foreach (Row row in db.identity_meta.get_with_device_id(identity_id, data.sid)) { try { - possible_jids.add(new Jid(row[db.identity_meta.address_name])); + possible_jids.add(Jid.from_string(row[db.identity_meta.address_name])); } catch (InvalidJidError e) { warning("Ignoring invalid jid from database: %s", e.message); } diff --git a/plugins/omemo/src/logic/manager.vala b/plugins/omemo/src/logic/manager.vala index cad6729e..71f17aae 100644 --- a/plugins/omemo/src/logic/manager.vala +++ b/plugins/omemo/src/logic/manager.vala @@ -218,7 +218,7 @@ public class Manager : StreamInteractionModule, Object { int inc = 0; foreach (Row row in db.identity_meta.get_unknown_devices(identity_id, jid.bare_jid.to_string())) { try { - module.fetch_bundle(stream, new Jid(row[db.identity_meta.address_name]), row[db.identity_meta.device_id], false); + module.fetch_bundle(stream, Jid.from_string(row[db.identity_meta.address_name]), row[db.identity_meta.device_id], false); inc++; } catch (InvalidJidError e) { warning("Ignoring device with invalid Jid: %s", e.message); diff --git a/plugins/omemo/src/ui/bad_messages_populator.vala b/plugins/omemo/src/ui/bad_messages_populator.vala index d87108ea..9dacba95 100644 --- a/plugins/omemo/src/ui/bad_messages_populator.vala +++ b/plugins/omemo/src/ui/bad_messages_populator.vala @@ -74,7 +74,7 @@ public class BadMessagesPopulator : Plugins.ConversationItemPopulator, Plugins.C } foreach (Row row in qry) { - Jid jid = new Jid(row[db.identity_meta.address_name]); + Jid jid = Jid.from_string(row[db.identity_meta.address_name]); if (!db.identity_meta.last_message_untrusted.is_null(row)) { DateTime time = new DateTime.from_unix_utc(row[db.identity_meta.last_message_untrusted]); var item = new BadMessageItem(plugin, current_conversation, jid, time, BadnessType.UNTRUSTED); diff --git a/plugins/omemo/src/ui/encryption_preferences_entry.vala b/plugins/omemo/src/ui/encryption_preferences_entry.vala index e06455e7..f0aedb6a 100644 --- a/plugins/omemo/src/ui/encryption_preferences_entry.vala +++ b/plugins/omemo/src/ui/encryption_preferences_entry.vala @@ -138,7 +138,7 @@ public class OmemoPreferencesWidget : Adw.PreferencesGroup { }); foreach (Row device in plugin.db.identity_meta.get_unknown_devices(identity_id, jid.to_string())) { try { - module.fetch_bundle(stream, new Jid(device[plugin.db.identity_meta.address_name]), device[plugin.db.identity_meta.device_id], false); + module.fetch_bundle(stream, Jid.from_string(device[plugin.db.identity_meta.address_name]), device[plugin.db.identity_meta.device_id], false); } catch (InvalidJidError e) { warning("Ignoring device with invalid Jid: %s", e.message); } -- cgit v1.3