diff options
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs index 42f47b5..66c9013 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.Inventory.cs | |||
@@ -338,6 +338,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
338 | uint rootEveryonePerms = RootPart.EveryoneMask; | 338 | uint rootEveryonePerms = RootPart.EveryoneMask; |
339 | uint everyone = rootEveryonePerms; | 339 | uint everyone = rootEveryonePerms; |
340 | 340 | ||
341 | // date is time of writing april 30th 2017 | ||
342 | bool newObject = (RootPart.CreationDate == 0 || RootPart.CreationDate > 1493574994); | ||
341 | SceneObjectPart[] parts = m_parts.GetArray(); | 343 | SceneObjectPart[] parts = m_parts.GetArray(); |
342 | for (int i = 0; i < parts.Length; i++) | 344 | for (int i = 0; i < parts.Length; i++) |
343 | { | 345 | { |
@@ -345,7 +347,8 @@ namespace OpenSim.Region.Framework.Scenes | |||
345 | part.AggregateInnerPerms(); | 347 | part.AggregateInnerPerms(); |
346 | owner &= part.AggregatedInnerOwnerPerms; | 348 | owner &= part.AggregatedInnerOwnerPerms; |
347 | group &= part.AggregatedInnerGroupPerms; | 349 | group &= part.AggregatedInnerGroupPerms; |
348 | everyone &= part.AggregatedInnerEveryonePerms; | 350 | if(newObject) |
351 | everyone &= part.AggregatedInnerEveryonePerms; | ||
349 | } | 352 | } |
350 | // recover modify and move | 353 | // recover modify and move |
351 | rootOwnerPerms &= movemodmask; | 354 | rootOwnerPerms &= movemodmask; |
@@ -407,14 +410,16 @@ namespace OpenSim.Region.Framework.Scenes | |||
407 | uint everyone = rootEveryonePerms; | 410 | uint everyone = rootEveryonePerms; |
408 | 411 | ||
409 | bool needUpdate = false; | 412 | bool needUpdate = false; |
410 | 413 | // date is time of writing april 30th 2017 | |
414 | bool newObject = (RootPart.CreationDate == 0 || RootPart.CreationDate > 1493574994); | ||
411 | SceneObjectPart[] parts = m_parts.GetArray(); | 415 | SceneObjectPart[] parts = m_parts.GetArray(); |
412 | for (int i = 0; i < parts.Length; i++) | 416 | for (int i = 0; i < parts.Length; i++) |
413 | { | 417 | { |
414 | SceneObjectPart part = parts[i]; | 418 | SceneObjectPart part = parts[i]; |
415 | owner &= part.AggregatedInnerOwnerPerms; | 419 | owner &= part.AggregatedInnerOwnerPerms; |
416 | group &= part.AggregatedInnerGroupPerms; | 420 | group &= part.AggregatedInnerGroupPerms; |
417 | everyone &= part.AggregatedInnerEveryonePerms; | 421 | if(newObject) |
422 | everyone &= part.AggregatedInnerEveryonePerms; | ||
418 | } | 423 | } |
419 | // recover modify and move | 424 | // recover modify and move |
420 | rootOwnerPerms &= movemodmask; | 425 | rootOwnerPerms &= movemodmask; |