diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 2fe6e22c1f..689e2eae93 100755
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -232,6 +232,12 @@ namespace OpenSim.Region.Framework.Scenes
///
public bool AllowAvatarCrossing { get; set; }
+ ///
+ /// When placed outside the region's border, do we transfer the objects or
+ /// do we keep simulating them here?
+ ///
+ public bool DisableObjectTransfer { get; set; }
+
public bool m_useFlySlow;
public bool m_useTrashOnDelete = true;
@@ -1131,6 +1137,7 @@ namespace OpenSim.Region.Framework.Scenes
if (entityTransferConfig != null)
{
AllowAvatarCrossing = entityTransferConfig.GetBoolean("AllowAvatarCrossing", AllowAvatarCrossing);
+ DisableObjectTransfer = entityTransferConfig.GetBoolean("DisableObjectTransfer", false);
}
#region Interest Management
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
index d08237e64f..398d7b11e1 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs
@@ -473,7 +473,8 @@ namespace OpenSim.Region.Framework.Scenes
if (
!Scene.PositionIsInCurrentRegion(val)
&& !IsAttachmentCheckFull()
- && (!Scene.LoadingPrims)
+ && (!Scene.LoadingPrims)
+ && !Scene.DisableObjectTransfer
)
{
IEntityTransferModule entityTransfer = m_scene.RequestModuleInterface();
diff --git a/bin/OpenSimDefaults.ini b/bin/OpenSimDefaults.ini
index a99608cdbe..74f2e94243 100644
--- a/bin/OpenSimDefaults.ini
+++ b/bin/OpenSimDefaults.ini
@@ -775,6 +775,10 @@
; Allow avatars to cross into and out of the region.
AllowAvatarCrossing = true
+ ; This disables border transfers for objects. When true, objects can be placed outside
+ ; the region's border without being transferred to another simulator.
+ DisableObjectTransfer = false
+
; Minimum user level required for HyperGrid teleports
LevelHGTeleport = 0