diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index 4bf872980b..4aac9a0d9b 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs @@ -1666,17 +1666,25 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api { if(newLand.GroupID != uuid) { - IGroupsModule groupsModule = m_ScriptEngine.World.RequestModuleInterface(); - GroupMembershipData member = null; - if (groupsModule != null) - member = groupsModule.GetMembershipData(uuid, newLand.OwnerID); - if (member == null) - OSSLError(string.Format("land owner is not member of the new group for parcel")); - else + if(uuid == UUID.Zero) { changed = true; newLand.GroupID = uuid; } + else + { + IGroupsModule groupsModule = m_ScriptEngine.World.RequestModuleInterface(); + GroupMembershipData member = null; + if (groupsModule != null) + member = groupsModule.GetMembershipData(uuid, newLand.OwnerID); + if (member == null) + OSSLError(string.Format("land owner is not member of the new group for parcel")); + else + { + changed = true; + newLand.GroupID = uuid; + } + } } } }