diff options
| author | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2023-10-04 15:43:31 +0200 |
|---|---|---|
| committer | Xavier Del Campo Romero <xavi.dcr@tutanota.com> | 2023-10-09 16:38:02 +0200 |
| commit | e1fd11775c7d275dd57d7d9202e88ac5173bbeef (patch) | |
| tree | 6ae817d4a175b5ad3027541133f88590200558f9 /xmpp-vala | |
| parent | 2c445501a4dc56c4a814f457a4669d79ebce0a57 (diff) | |
Check XmppStream against null
Most of the calls to stream_interactor.get_stream(account) were already
doing null checks, but there were still some missing.
Diffstat (limited to 'xmpp-vala')
| -rw-r--r-- | xmpp-vala/src/module/xep/0313_2_message_archive_management.vala | 13 | ||||
| -rw-r--r-- | xmpp-vala/src/module/xep/0313_message_archive_management.vala | 12 |
2 files changed, 21 insertions, 4 deletions
diff --git a/xmpp-vala/src/module/xep/0313_2_message_archive_management.vala b/xmpp-vala/src/module/xep/0313_2_message_archive_management.vala index 3a6d9259..7e8826e2 100644 --- a/xmpp-vala/src/module/xep/0313_2_message_archive_management.vala +++ b/xmpp-vala/src/module/xep/0313_2_message_archive_management.vala @@ -39,7 +39,11 @@ namespace Xmpp.MessageArchiveManagement.V2 { } } - private StanzaNode create_base_query(XmppStream stream, MamQueryParams mam_params) { + private StanzaNode create_base_query(XmppStream? stream, MamQueryParams mam_params) { + if (stream == null) { + return new StanzaNode(); + } + var fields = new ArrayList<DataForms.DataForm.Field>(); if (mam_params.with != null) { @@ -61,7 +65,12 @@ namespace Xmpp.MessageArchiveManagement.V2 { return MessageArchiveManagement.create_base_query(stream, MessageArchiveManagement.NS_URI_2, mam_params.query_id, fields); } - public async QueryResult query_archive(XmppStream stream, MamQueryParams mam_params, Cancellable? cancellable = null) { + public async QueryResult query_archive(XmppStream? stream, MamQueryParams mam_params, Cancellable? cancellable = null) { + if (stream == null) { + var result = new QueryResult(); + result.error = true; + return result; + } var query_node = create_base_query(stream, mam_params); if (!mam_params.use_ns2_extended) { query_node.put_node(ResultSetManagement.create_set_rsm_node_before(mam_params.end_id)); diff --git a/xmpp-vala/src/module/xep/0313_message_archive_management.vala b/xmpp-vala/src/module/xep/0313_message_archive_management.vala index 1caa1bc3..6de90171 100644 --- a/xmpp-vala/src/module/xep/0313_message_archive_management.vala +++ b/xmpp-vala/src/module/xep/0313_message_archive_management.vala @@ -53,7 +53,11 @@ public class Module : XmppStreamModule { } } - internal StanzaNode create_base_query(XmppStream stream, string ns, string? queryid, Gee.List<DataForms.DataForm.Field> fields) { + internal StanzaNode create_base_query(XmppStream? stream, string ns, string? queryid, Gee.List<DataForms.DataForm.Field> fields) { + if (stream == null) { + return new StanzaNode(); + } + DataForms.DataForm data_form = new DataForms.DataForm(); DataForms.DataForm.HiddenField form_type_field = new DataForms.DataForm.HiddenField() { var="FORM_TYPE" }; @@ -156,7 +160,11 @@ public class MessageFlag : Xmpp.MessageFlag { } private static string NS_VER(XmppStream stream) { - return stream.get_flag(Flag.IDENTITY).ns_ver; + var? flag = stream.get_flag(Flag.IDENTITY); + if (flag == null) { + return ""; + } + return flag.ns_ver; } }
\ No newline at end of file |
