summaryrefslogtreecommitdiffstats
path: root/store/sqlstore/channel_store.go
diff options
context:
space:
mode:
authorCarlos Tadeu Panato Junior <ctadeu@gmail.com>2018-06-11 20:09:38 +0200
committerGitHub <noreply@github.com>2018-06-11 20:09:38 +0200
commit9517cccab017f67db973ef4a601de68656ce1713 (patch)
treea52889906f2289774df20de1e830f37b681b606c /store/sqlstore/channel_store.go
parent1b821c7319ccfa153d1bc9a8ffb3f07d3c3a4582 (diff)
downloadchat-9517cccab017f67db973ef4a601de68656ce1713.tar.gz
chat-9517cccab017f67db973ef4a601de68656ce1713.tar.bz2
chat-9517cccab017f67db973ef4a601de68656ce1713.zip
Relese5.0 merge master 20180611 (#8939)
* Add missing diagnostics (#8911) * Update diagnostics.go * Update diagnostics.go * Fix push notification styling backwards compatibility (#8913) * MM-10803: remove premature user sanitization on deactivation (#8926) * remove unused UpdateNonSSOUserActive * MM-10803: stop prematurely sanitizing users on deactivate This change was preceded by the removal of UpdateNonSSOUserActive to ensure there are no APIs relying on the sanitized return value. * MM-10803: test websocket events after UpdateUserActive * MM-10264: Adds system scheme to permissions import/export. (#8924) * MM-10264: Adds system scheme to permissions import/export. * MM-10264: Switches to more likely unique name. * MM-10264: Changed collision prevention string. * MM-10264: Rolls back created schemes in all error cases. * MM-10264: Test fix for more rollback cases. * Fix idempotency of scheme migrations. (#8935) This fixes the issue where if the migration tries to migrate an already scheme-aware member object it would end up removing it's scheme-derived roles. Instead, only if the member object is unmigrated do we default to setting the scheme-derived role booleans to false. We tell if it is an unmigrated member object by checking if the booleans are set to null.
Diffstat (limited to 'store/sqlstore/channel_store.go')
-rw-r--r--store/sqlstore/channel_store.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/store/sqlstore/channel_store.go b/store/sqlstore/channel_store.go
index 5f336d904..476665514 100644
--- a/store/sqlstore/channel_store.go
+++ b/store/sqlstore/channel_store.go
@@ -1733,8 +1733,12 @@ func (s SqlChannelStore) MigrateChannelMembers(fromChannelId string, fromUserId
for _, member := range channelMembers {
roles := strings.Fields(member.Roles)
var newRoles []string
- member.SchemeAdmin = sql.NullBool{Bool: false, Valid: true}
- member.SchemeUser = sql.NullBool{Bool: false, Valid: true}
+ if !member.SchemeAdmin.Valid {
+ member.SchemeAdmin = sql.NullBool{Bool: false, Valid: true}
+ }
+ if !member.SchemeUser.Valid {
+ member.SchemeUser = sql.NullBool{Bool: false, Valid: true}
+ }
for _, role := range roles {
if role == model.CHANNEL_ADMIN_ROLE_ID {
member.SchemeAdmin = sql.NullBool{Bool: true, Valid: true}