From 2e75983800c490a8ffc6bcbba3d9e9f5eb42f79d Mon Sep 17 00:00:00 2001 From: David Rowe Date: Wed, 3 Mar 2021 16:31:12 +1300 Subject: [PATCH] Set default value of canRezAvatarEntities to that of canConnectToDomain --- .../resources/describe-settings.json | 2 +- .../src/DomainServerSettingsManager.cpp | 25 ++++++++++++++++--- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/domain-server/resources/describe-settings.json b/domain-server/resources/describe-settings.json index ee1266c9dd..6d4dce8322 100644 --- a/domain-server/resources/describe-settings.json +++ b/domain-server/resources/describe-settings.json @@ -1,5 +1,5 @@ { - "version": 2.4, + "version": 2.5, "settings": [ { "name": "metaverse", diff --git a/domain-server/src/DomainServerSettingsManager.cpp b/domain-server/src/DomainServerSettingsManager.cpp index 42a0ffa64e..f322520897 100644 --- a/domain-server/src/DomainServerSettingsManager.cpp +++ b/domain-server/src/DomainServerSettingsManager.cpp @@ -363,9 +363,6 @@ void DomainServerSettingsManager::setupConfigMap(const QString& userConfigFilena foreach (auto permissionsSet, permissionsSets) { for (auto entry : permissionsSet) { const auto& userKey = entry.first; - - permissionsSet[userKey]->set(NodePermissions::Permission::canRezAvatarEntities); - if (onlyEditorsAreRezzers) { if (permissionsSet[userKey]->can(NodePermissions::Permission::canAdjustLocks)) { permissionsSet[userKey]->set(NodePermissions::Permission::canRezPermanentEntities); @@ -530,6 +527,28 @@ void DomainServerSettingsManager::setupConfigMap(const QString& userConfigFilena *newAdminRoles = adminRoles; } + if (oldVersion < 2.5) { + // Default values for new canRezAvatarEntities permission. + unpackPermissions(); + std::list> permissionsSets{ + _standardAgentPermissions.get(), + _agentPermissions.get(), + _ipPermissions.get(), + _macPermissions.get(), + _machineFingerprintPermissions.get(), + _groupPermissions.get(), + _groupForbiddens.get() + }; + foreach (auto permissionsSet, permissionsSets) { + for (auto entry : permissionsSet) { + const auto& userKey = entry.first; + if (permissionsSet[userKey]->can(NodePermissions::Permission::canConnectToDomain)) { + permissionsSet[userKey]->set(NodePermissions::Permission::canRezAvatarEntities); + } + } + } + packPermissions(); + } // write the current description version to our settings *versionVariant = _descriptionVersion;