diff options
author | Neil Alexander <neilalexander@users.noreply.github.com> | 2022-02-21 16:38:53 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-21 16:38:53 +0000 |
commit | bbe7d37928194d411d99079055cdcec9dbdd4959 (patch) | |
tree | 937db0b5c84cf67967c04dd4301362cece5c167a /syncapi/routing | |
parent | aa6bbf484a7963a754d47ba04869c06b72d4ee49 (diff) |
Fix logic error on context history visibility (#2211)
Diffstat (limited to 'syncapi/routing')
-rw-r--r-- | syncapi/routing/context.go | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/syncapi/routing/context.go b/syncapi/routing/context.go index 709f6291..ef7efa2b 100644 --- a/syncapi/routing/context.go +++ b/syncapi/routing/context.go @@ -64,7 +64,7 @@ func Context( ctx := req.Context() membershipRes := roomserver.QueryMembershipForUserResponse{} membershipReq := roomserver.QueryMembershipForUserRequest{UserID: device.UserID, RoomID: roomID} - if err := rsAPI.QueryMembershipForUser(ctx, &membershipReq, &membershipRes); err != nil { + if err = rsAPI.QueryMembershipForUser(ctx, &membershipReq, &membershipRes); err != nil { logrus.WithError(err).Error("unable to fo membership") return jsonerror.InternalServerError() } @@ -86,11 +86,12 @@ func Context( state, _ := syncDB.CurrentState(ctx, roomID, &stateFilter, nil) // verify the user is allowed to see the context for this room/event for _, x := range state { - hisVis, err := x.HistoryVisibility() + var hisVis string + hisVis, err = x.HistoryVisibility() if err != nil { continue } - allowed := hisVis != "world_readable" && membershipRes.Membership == "join" + allowed := hisVis == gomatrixserverlib.WorldReadable || membershipRes.Membership == gomatrixserverlib.Join if !allowed { return util.JSONResponse{ Code: http.StatusForbidden, |