summaryrefslogtreecommitdiff
path: root/indra/newview/llfloatermyenvironment.cpp
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2019-08-26 11:43:45 -0700
committerRider Linden <rider@lindenlab.com>2019-08-26 11:43:45 -0700
commit1f656735d339fc4d83da86efbb400af1361c27db (patch)
treeda05e8dbe4bbcbaf1c248df9799534e546123897 /indra/newview/llfloatermyenvironment.cpp
parent98d926afd7fba39cac373a89705851ad8bb2258e (diff)
SL-11705, SL-11706: New flags in llsettings base for tracking by simulator.
Diffstat (limited to 'indra/newview/llfloatermyenvironment.cpp')
-rw-r--r--indra/newview/llfloatermyenvironment.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/indra/newview/llfloatermyenvironment.cpp b/indra/newview/llfloatermyenvironment.cpp
index 1d2f14532d..21d106c8b1 100644
--- a/indra/newview/llfloatermyenvironment.cpp
+++ b/indra/newview/llfloatermyenvironment.cpp
@@ -277,9 +277,16 @@ void LLFloaterMyEnvironment::onDoApply(const std::string &context)
LLUUID asset_id = itemp->getAssetUUID();
std::string name = itemp->getName();
+ U32 flags(0);
+
+ if (!itemp->getPermissions().allowOperationBy(PERM_MODIFY, gAgent.getID()))
+ flags |= LLSettingsBase::FLAG_NOMOD;
+ if (!itemp->getPermissions().allowOperationBy(PERM_TRANSFER, gAgent.getID()))
+ flags |= LLSettingsBase::FLAG_NOTRANS;
+
if (context == PARAMETER_REGION)
{
- LLEnvironment::instance().updateRegion(asset_id, name, LLEnvironment::NO_TRACK, -1, -1);
+ LLEnvironment::instance().updateRegion(asset_id, name, LLEnvironment::NO_TRACK, -1, -1, flags);
LLEnvironment::instance().setSharedEnvironment();
}
else if (context == PARAMETER_PARCEL)
@@ -290,7 +297,7 @@ void LLFloaterMyEnvironment::onDoApply(const std::string &context)
LL_WARNS("ENVIRONMENT") << "Unable to determine parcel." << LL_ENDL;
return;
}
- LLEnvironment::instance().updateParcel(parcel->getLocalID(), asset_id, name, LLEnvironment::NO_TRACK, -1, -1);
+ LLEnvironment::instance().updateParcel(parcel->getLocalID(), asset_id, name, LLEnvironment::NO_TRACK, -1, -1, flags);
LLEnvironment::instance().setSharedEnvironment();
}
else if (context == PARAMETER_LOCAL)