aboutsummaryrefslogtreecommitdiff
path: root/roomserver
diff options
context:
space:
mode:
authorNeil Alexander <neilalexander@users.noreply.github.com>2020-05-11 18:21:25 +0100
committerGitHub <noreply@github.com>2020-05-11 18:21:25 +0100
commit0c892d59fa5846097647d08244059de4f73e39a6 (patch)
treeefb2bf967217f0c0e228d0daea3782b3e43aae3a /roomserver
parent99e0a7dff27501df482ba929f53637f4a96c78d6 (diff)
Prevent panic in membership updater (#1021)
Diffstat (limited to 'roomserver')
-rw-r--r--roomserver/internal/input_membership.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/roomserver/internal/input_membership.go b/roomserver/internal/input_membership.go
index cba75b4f..19b7d805 100644
--- a/roomserver/internal/input_membership.go
+++ b/roomserver/internal/input_membership.go
@@ -16,6 +16,7 @@ package internal
import (
"context"
+ "errors"
"fmt"
"github.com/matrix-org/dendrite/roomserver/api"
@@ -106,6 +107,13 @@ func updateMembership(
return updates, nil
}
+ if add == nil {
+ // This shouldn't happen. Returning an error here is better than panicking
+ // in the membership updater functions later on.
+ // TODO: Why does this happen to begin with?
+ return updates, errors.New("add should not be nil")
+ }
+
mu, err := updater.MembershipUpdater(targetUserNID)
if err != nil {
return nil, err