From 59cbce336180dc8dcfbc7606a28e3b979b0aa6cf Mon Sep 17 00:00:00 2001 From: Goffi Date: Thu, 22 Nov 2012 00:46:00 +0100 Subject: [PATCH] core: asyncConnect is now fired when roster is available --- src/core/sat_main.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/core/sat_main.py b/src/core/sat_main.py index b42ec7a2..838c68be 100644 --- a/src/core/sat_main.py +++ b/src/core/sat_main.py @@ -116,7 +116,7 @@ class SAT(service.Service): self.bridge.register("getVersion", lambda: self.get_const('client_version')) self.bridge.register("getProfileName", self.memory.getProfileName) self.bridge.register("getProfilesList", self.memory.getProfilesList) - self.bridge.register("getEntityData", lambda _jid, keys, profile: self.memory.getEntityData(jid.JID(_jid),keys, profile)) + self.bridge.register("getEntityData", lambda _jid, keys, profile: self.memory.getEntityData(jid.JID(_jid), keys, profile)) self.bridge.register("createProfile", self.memory.createProfile) self.bridge.register("asyncCreateProfile", self.memory.asyncCreateProfile) self.bridge.register("deleteProfile", self.memory.deleteProfile) @@ -256,7 +256,9 @@ class SAT(service.Service): current.startService() - return current.getConnectionDeferred() + d = current.getConnectionDeferred() + d.addCallback(lambda x: current.roster.got_roster) #we want to be sure that we got the roster + return d self.memory.startProfileSession(profile) return self.memory.loadIndividualParams(profile).addCallback(afterMemoryInit)