diff --git a/OpenSim/Framework/AgentCircuitData.cs b/OpenSim/Framework/AgentCircuitData.cs index ffcc5840e8..acf925a408 100644 --- a/OpenSim/Framework/AgentCircuitData.cs +++ b/OpenSim/Framework/AgentCircuitData.cs @@ -128,7 +128,30 @@ namespace OpenSim.Framework /// /// Viewer's version string as reported by the viewer at login /// - public string Viewer; + private string ViewerInternal; + + /// + /// Viewer's version string + /// + public string Viewer + { + set { ViewerInternal = value; } + // Try to return consistent viewer string taking into account + // that viewers have chaagned how version is reported + // See http://opensimulator.org/mantis/view.php?id=6851 + get + { + // Old style version string contains viewer name followed by a space followed by a version number + if (ViewerInternal.Contains(" ")) + { + return ViewerInternal; + } + else // New style version contains no spaces, just version number + { + return Channel + " " + ViewerInternal; + } + } + } /// /// The channel strinf sent by the viewer at login