diff options
| author | Loren Shih <seraph@lindenlab.com> | 2009-07-24 16:20:15 +0000 |
|---|---|---|
| committer | Loren Shih <seraph@lindenlab.com> | 2009-07-24 16:20:15 +0000 |
| commit | f5ba6df4c2dc5a5e0842ed028dd4de01406dca3b (patch) | |
| tree | 20c3672125adec3f3db81864ef78143da01ec3c2 /indra/llinventory/llinventory.cpp | |
| parent | be7e9a46dbfa6bea2c6d1a0d4e9177eb633f26b4 (diff) | |
svn merge -r 127369:127511 svn+ssh://svn.lindenlab.com/svn/linden/branches/avatar-pipeline/landmark-permissions__merge__viewer2.0.0.3-r127280 into svn+ssh://svn.lindenlab.com/svn/linden/branches/viewer/viewer-2.0.0-3
includes post-merge fix for DEV-36563 : Remove mAcceptsCallingCardNames
For DEV-36496 : Viewer merge for Landmark & Callingcard Permissions [VIEWER]
For DEV-36563 : Remove mAcceptsCallingCardNames
Test plans - EXTERNAL
* [ Test against a 1.30 server ]
* Test various permissions operations - both on items in inventory, and rezzed items and items that are embedded in objects.
* Test creating landmarks.
Test plans - INTERNAL
* Test against any inventory permissions smoke tests.
* See test plans in QAR-1644 for full Landmark&Callingcard Permissions test plan.
Diffstat (limited to 'indra/llinventory/llinventory.cpp')
| -rw-r--r-- | indra/llinventory/llinventory.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/indra/llinventory/llinventory.cpp b/indra/llinventory/llinventory.cpp index 2d507bd560..59aca12de2 100644 --- a/indra/llinventory/llinventory.cpp +++ b/indra/llinventory/llinventory.cpp @@ -310,6 +310,7 @@ LLInventoryItem::LLInventoryItem( { LLStringUtil::replaceNonstandardASCII(mDescription, ' '); LLStringUtil::replaceChar(mDescription, '|', ' '); + mPermissions.initMasks(inv_type); } LLInventoryItem::LLInventoryItem() : @@ -432,6 +433,9 @@ void LLInventoryItem::setDescription(const std::string& d) void LLInventoryItem::setPermissions(const LLPermissions& perm) { mPermissions = perm; + + // Override permissions to unrestricted if this is a landmark + mPermissions.initMasks(mInventoryType); } void LLInventoryItem::setInventoryType(LLInventoryType::EType inv_type) @@ -503,6 +507,7 @@ BOOL LLInventoryItem::unpackMessage(LLMessageSystem* msg, const char* block, S32 mType = static_cast<LLAssetType::EType>(type); msg->getS8(block, "InvType", type, block_num); mInventoryType = static_cast<LLInventoryType::EType>(type); + mPermissions.initMasks(mInventoryType); msg->getU32Fast(block, _PREHASH_Flags, mFlags, block_num); @@ -693,6 +698,9 @@ BOOL LLInventoryItem::importFile(LLFILE* fp) lldebugs << "Resetting inventory type for " << mUUID << llendl; mInventoryType = LLInventoryType::defaultForAssetType(mType); } + + mPermissions.initMasks(mInventoryType); + return success; } @@ -896,6 +904,9 @@ BOOL LLInventoryItem::importLegacyStream(std::istream& input_stream) lldebugs << "Resetting inventory type for " << mUUID << llendl; mInventoryType = LLInventoryType::defaultForAssetType(mType); } + + mPermissions.initMasks(mInventoryType); + return success; } @@ -1118,6 +1129,8 @@ bool LLInventoryItem::fromLLSD(const LLSD& sd) mInventoryType = LLInventoryType::defaultForAssetType(mType); } + mPermissions.initMasks(mInventoryType); + return true; fail: return false; |
