aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorMarck2010-11-26 11:50:51 +0100
committerMarck2010-11-26 11:50:51 +0100
commit0bc5ffbe967ac1152755b05c0d71b7e661efb104 (patch)
treec016ff18a70c48d12bfef4d6f45ab11eaec402da /OpenSim
parentExport the module interface for restart (diff)
downloadopensim-SC-0bc5ffbe967ac1152755b05c0d71b7e661efb104.zip
opensim-SC-0bc5ffbe967ac1152755b05c0d71b7e661efb104.tar.gz
opensim-SC-0bc5ffbe967ac1152755b05c0d71b7e661efb104.tar.bz2
opensim-SC-0bc5ffbe967ac1152755b05c0d71b7e661efb104.tar.xz
Fix handling of landmarks for systems with culture settings other than en_US. This fixes Mantis #5177.
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Framework/AssetLandmark.cs12
1 files changed, 10 insertions, 2 deletions
diff --git a/OpenSim/Framework/AssetLandmark.cs b/OpenSim/Framework/AssetLandmark.cs
index 7806c1f..f433235 100644
--- a/OpenSim/Framework/AssetLandmark.cs
+++ b/OpenSim/Framework/AssetLandmark.cs
@@ -51,8 +51,16 @@ namespace OpenSim.Framework
51 string[] parts = temp.Split('\n'); 51 string[] parts = temp.Split('\n');
52 int.TryParse(parts[0].Substring(17, 1), out Version); 52 int.TryParse(parts[0].Substring(17, 1), out Version);
53 UUID.TryParse(parts[1].Substring(10, 36), out RegionID); 53 UUID.TryParse(parts[1].Substring(10, 36), out RegionID);
54 // the vector is stored with spaces as separators, not with commas ("10.3 32.5 43" instead of "10.3, 32.5, 43") 54 // The position is a vector with spaces as separators ("10.3 32.5 43").
55 Vector3.TryParse(parts[2].Substring(10, parts[2].Length - 10).Replace(" ", ","), out Position); 55 // Parse each scalar separately to take into account the system's culture setting.
56 string[] scalars = parts[2].Substring(10, parts[2].Length - 10).Split(' ');
57 if (scalars.Length > 0)
58 System.Single.TryParse(scalars[0], out Position.X);
59 if (scalars.Length > 1)
60 System.Single.TryParse(scalars[1], out Position.Y);
61 if (scalars.Length > 2)
62 System.Single.TryParse(scalars[2], out Position.Z);
63
56 ulong.TryParse(parts[3].Substring(14, parts[3].Length - 14), out RegionHandle); 64 ulong.TryParse(parts[3].Substring(14, parts[3].Length - 14), out RegionHandle);
57 } 65 }
58 } 66 }