Fix runtime critical

This commit is contained in:
fiaxh 2019-08-26 17:20:10 +02:00
parent ff6caf241c
commit d02f7b6a3a

View file

@ -380,9 +380,12 @@ public class Manager : StreamInteractionModule, Object {
public async bool ensure_get_keys_for_jid(Account account, Jid jid) { public async bool ensure_get_keys_for_jid(Account account, Jid jid) {
if (trust_manager.is_known_address(account, jid)) return true; if (trust_manager.is_known_address(account, jid)) return true;
XmppStream? stream = stream_interactor.get_stream(account); XmppStream? stream = stream_interactor.get_stream(account);
var device_list = yield stream_interactor.module_manager.get_module(account, StreamModule.IDENTITY).request_user_devicelist((!)stream, jid); if (stream != null) {
var device_list = yield stream_interactor.module_manager.get_module(account, StreamModule.IDENTITY).request_user_devicelist(stream, jid);
return device_list.size > 0; return device_list.size > 0;
} }
return true; // TODO wait for stream?
}
public static void start(StreamInteractor stream_interactor, Database db, TrustManager trust_manager) { public static void start(StreamInteractor stream_interactor, Database db, TrustManager trust_manager) {
Manager m = new Manager(stream_interactor, db, trust_manager); Manager m = new Manager(stream_interactor, db, trust_manager);