From 220083df74784a9bc696266acf84b135e19e8dd2 Mon Sep 17 00:00:00 2001 From: Bohdan Horbeshko Date: Mon, 10 Aug 2026 13:32:57 -0400 Subject: [PATCH] Avoid a delay when adding a new resource --- telegram/utils.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/telegram/utils.go b/telegram/utils.go index 644bde3..957f63b 100644 --- a/telegram/utils.go +++ b/telegram/utils.go @@ -2410,18 +2410,20 @@ func (c *Client) roster(resource string) { if _, ok := c.resources[resource]; ok { c.locks.resourcesLock.Unlock() return // we know it + } else if resource != "" { + c.resources[resource] = true } c.locks.resourcesLock.Unlock() log.Warnf("Sending roster for %v", resource) - for _, chat := range c.cache.OwnChatsKeys() { - c.ProcessStatusUpdate(chat, "", "", true) - } + go func() { + for _, chat := range c.cache.OwnChatsKeys() { + c.ProcessStatusUpdate(chat, "", "", true) + } + }() c.sendPresence(gateway.SPStatus("Logged in as: " + c.Session.Login)) - - c.addResource(resource) } // get last messages from specified chat