From b550d51b7f3b1b74672f71af9221c38c53b36efe Mon Sep 17 00:00:00 2001 From: Toni Spets Date: Tue, 15 Sep 2026 04:49:22 +0000 Subject: [PATCH] backfill, msgconv: don't panic when the whatsmeow client is nil --- pkg/connector/backfill.go | 3 +++ pkg/msgconv/from-whatsapp.go | 6 +++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/connector/backfill.go b/pkg/connector/backfill.go index cab460f..e0f5ffc 100644 --- a/pkg/connector/backfill.go +++ b/pkg/connector/backfill.go @@ -602,6 +602,9 @@ func (wa *WhatsAppClient) convertHistorySyncMessages( messages []*waWeb.WebMessageInfo, explodeOnError bool, ) (*bridgev2.FetchMessagesResponse, error) { + if wa.Client == nil { + return nil, bridgev2.ErrNotLoggedIn + } oldestTS := messages[len(messages)-1].GetMessageTimestamp() newestTS := messages[0].GetMessageTimestamp() convertedMessages := make([]*bridgev2.BackfillMessage, 0, len(messages)) diff --git a/pkg/msgconv/from-whatsapp.go b/pkg/msgconv/from-whatsapp.go index 6dac5a2..f7f38f0 100644 --- a/pkg/msgconv/from-whatsapp.go +++ b/pkg/msgconv/from-whatsapp.go @@ -76,7 +76,11 @@ func (mc *MessageConverter) getBasicUserInfo(ctx context.Context, user types.JID pnJID = user } else if user.Server == types.HiddenUserServer { cli := getClient(ctx) - if user.User == cli.Store.GetLID().User { + if cli == nil { + zerolog.Ctx(ctx).Warn(). + Stringer("lid", user). + Msg("Client is nil, cannot resolve LID mention to phone number") + } else if user.User == cli.Store.GetLID().User { pnJID = cli.Store.GetJID() } else { pnJID, err = cli.Store.LIDs.GetPNForLID(ctx, user)