From 4d33af7f81f293d9f16f18bb6313f088f5772ccf Mon Sep 17 00:00:00 2001 From: Sumner Evans Date: Thu, 5 Dec 2024 08:58:09 -0700 Subject: [PATCH] client: fix detection of bad credentials on connect Signed-off-by: Sumner Evans --- pkg/connector/client.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/connector/client.go b/pkg/connector/client.go index 9be307d3..904bf024 100644 --- a/pkg/connector/client.go +++ b/pkg/connector/client.go @@ -36,6 +36,8 @@ import ( "go.mau.fi/mautrix-telegram/pkg/connector/util" ) +var ErrNoAuthKey = errors.New("user does not have auth key") + type TelegramClient struct { main *TelegramConnector ScopedStore *store.ScopedStore @@ -395,7 +397,7 @@ func (t *TelegramClient) onDead() { } func (t *TelegramClient) sendBadCredentialsOrUnknownError(err error) { - if auth.IsUnauthorized(err) { + if auth.IsUnauthorized(err) || errors.Is(err, ErrNoAuthKey) { t.userLogin.BridgeState.Send(status.BridgeState{ StateEvent: status.StateBadCredentials, Error: "tg-no-auth", @@ -453,7 +455,7 @@ func (t *TelegramClient) onAuthError(ctx context.Context, err error) { func (t *TelegramClient) Connect(ctx context.Context) { if !t.userLogin.Metadata.(*UserLoginMetadata).Session.HasAuthKey() { - t.sendBadCredentialsOrUnknownError(errors.New("user does not have an auth key")) + t.sendBadCredentialsOrUnknownError(ErrNoAuthKey) return }