From 5273ce5ee391a433b491804ee28e775ab6d0c4be Mon Sep 17 00:00:00 2001
From: onefang
Date: Sat, 3 Aug 2019 20:04:12 +1000
Subject: Hypergridders have their full name in firstname, and their grid in
 lastname.  Sometimes.

Code filled with gotos may be spaghetti code, but object oriented code
can be like chopped spaghetti.  At least with gotos you can follow them.
---
 OpenSim/Region/Framework/Scenes/Scene.cs | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)

diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index fcfa448..b255924 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -4411,17 +4411,30 @@ namespace OpenSim.Region.Framework.Scenes
 			if (isLocal)
 			{
 			    grid = "local";
-			    m_log.InfoFormat("[CONNECTION BEGIN]: LOCAL agent {0}, checking auto groups.", agent.AgentID);
+			    m_log.InfoFormat("[CONNECTION BEGIN]: LOCAL agent {0} {1} {2} {3}, checking auto groups.", agent.firstname, agent.lastname, agent.Name, agent.AgentID);
 			}
 			else
 			{
 			    // agent.AgentID could look like this - @grid.com:8002 01234567-89ab-cdef-0123-456789abcdef
+			    // Or agent.lastname could.
             		    string a = agent.AgentID.ToString();
 			    if ("@" == a.Substring(0, 1))
 			    {
 				grid = a.Split(':')[0].Substring(1);
 				m_log.InfoFormat("[CONNECTION BEGIN]: HYPERGRID agent {0} from grid {1}, checking auto groups.", agent.AgentID, grid);
 			    }
+			    else
+			    {
+				a = agent.lastname;
+				if (String.Empty != a)
+				{
+				    if ("@" == a.Substring(0, 1))
+				    {
+					grid = a.Split(':')[0].Substring(1);
+					m_log.InfoFormat("[CONNECTION BEGIN]: HYPERGRID agent {0} from grid {1}, checking auto groups.", agent.firstname, grid);
+				    }
+				}
+			    }
 			}
 			string[] groupIDs = null;
 			try
-- 
cgit v1.1