From b22731cdcd874637e04faa9f230aef5c938e42c9 Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Thu, 10 Sep 2020 10:38:23 +0100 Subject: [PATCH] Fix nil pointer exception --- federationsender/internal/perform.go | 5 ++++- roomserver/internal/perform/perform_join.go | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/federationsender/internal/perform.go b/federationsender/internal/perform.go index 90abae236..f73385c7f 100644 --- a/federationsender/internal/perform.go +++ b/federationsender/internal/perform.go @@ -98,7 +98,10 @@ func (r *FederationSenderInternalAPI) PerformJoin( response.LastError = &gomatrix.HTTPError{ Code: 0, WrappedError: nil, - Message: lastErr.Error(), + Message: "Unknown HTTP error", + } + if lastErr != nil { + response.LastError.Message = lastErr.Error() } } diff --git a/roomserver/internal/perform/perform_join.go b/roomserver/internal/perform/perform_join.go index 5bee11b3b..b52dd7c3e 100644 --- a/roomserver/internal/perform/perform_join.go +++ b/roomserver/internal/perform/perform_join.go @@ -192,7 +192,7 @@ func (r *Joiner) performJoinRoomByID( serverInRoom, _ := helpers.IsServerCurrentlyInRoom(ctx, r.DB, r.ServerName, req.RoomIDOrAlias) isInvitePending, inviteSender, _, err := helpers.IsInvitePending(ctx, r.DB, req.RoomIDOrAlias, req.UserID) if !serverInRoom || (err == nil && isInvitePending) { - if inviteSender != "" { + if err == nil && inviteSender != "" { // Check if there's an invite pending. _, inviterDomain, ierr := gomatrixserverlib.SplitID('@', inviteSender) if ierr != nil {