diff options
author | Teravus Ovares (Dan Olivares) | 2009-12-03 01:50:54 -0500 |
---|---|---|
committer | Teravus Ovares (Dan Olivares) | 2009-12-03 01:50:54 -0500 |
commit | af04cd1ae00c5533df5b6be6333bd58ce13aa1a9 (patch) | |
tree | 0c2b80b01e483371a5b986d9f354e6c9c0256c8b | |
parent | Log old position and region information when an orphaned child prim is found (diff) | |
download | opensim-SC-af04cd1ae00c5533df5b6be6333bd58ce13aa1a9.zip opensim-SC-af04cd1ae00c5533df5b6be6333bd58ce13aa1a9.tar.gz opensim-SC-af04cd1ae00c5533df5b6be6333bd58ce13aa1a9.tar.bz2 opensim-SC-af04cd1ae00c5533df5b6be6333bd58ce13aa1a9.tar.xz |
* If the position that comes in on Scene.SetHomeRezPoint has a component that is 255.5, replace the component with the user's position in the simulator.
* Fixes mantis 4414: http://opensimulator.org/mantis/view.php?id=4414
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 8788ced..08b7115 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -3034,6 +3034,25 @@ namespace OpenSim.Region.Framework.Scenes | |||
3034 | // TODO: The next line can be removed, as soon as only homeRegionID based UserServers are around. | 3034 | // TODO: The next line can be removed, as soon as only homeRegionID based UserServers are around. |
3035 | // TODO: The HomeRegion property can be removed then, too | 3035 | // TODO: The HomeRegion property can be removed then, too |
3036 | UserProfile.HomeRegion = RegionInfo.RegionHandle; | 3036 | UserProfile.HomeRegion = RegionInfo.RegionHandle; |
3037 | |||
3038 | // Linden Client limitation.. | ||
3039 | if (position.X == 255.5f || position.Y == 255.5f) | ||
3040 | { | ||
3041 | ScenePresence avatar = null; | ||
3042 | if (TryGetAvatar(remoteClient.AgentId, out avatar)) | ||
3043 | { | ||
3044 | if (position.X == 255.5f) | ||
3045 | { | ||
3046 | position.X = avatar.AbsolutePosition.X; | ||
3047 | } | ||
3048 | if (position.Y == 255.5f) | ||
3049 | { | ||
3050 | position.Y = avatar.AbsolutePosition.Y; | ||
3051 | } | ||
3052 | } | ||
3053 | |||
3054 | } | ||
3055 | |||
3037 | UserProfile.HomeLocation = position; | 3056 | UserProfile.HomeLocation = position; |
3038 | UserProfile.HomeLookAt = lookAt; | 3057 | UserProfile.HomeLookAt = lookAt; |
3039 | CommsManager.UserService.UpdateUserProfile(UserProfile); | 3058 | CommsManager.UserService.UpdateUserProfile(UserProfile); |