Prevent panic in membership updater

This commit is contained in:
Neil Alexander 2020-05-11 17:43:32 +01:00
parent 99e0a7dff2
commit 585510eed8

View file

@ -16,6 +16,7 @@ package internal
import ( import (
"context" "context"
"errors"
"fmt" "fmt"
"github.com/matrix-org/dendrite/roomserver/api" "github.com/matrix-org/dendrite/roomserver/api"
@ -106,6 +107,13 @@ func updateMembership(
return updates, nil 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) mu, err := updater.MembershipUpdater(targetUserNID)
if err != nil { if err != nil {
return nil, err return nil, err