diff --git a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
index 5507526310..2701912d18 100644
--- a/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
+++ b/OpenSim/Region/CoreModules/Framework/UserManagement/UserManagementModule.cs
@@ -805,7 +805,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement
return !userdata.IsUnknownUser;
}
- public virtual void AddUser(UUID uuid, string first, string last)
+ public virtual void AddUser(UUID uuid, string first, string last, bool isNPC = false)
{
lock(m_UserCache)
{
@@ -816,7 +816,7 @@ namespace OpenSim.Region.CoreModules.Framework.UserManagement
user.FirstName = first;
user.LastName = last;
user.IsUnknownUser = false;
- user.HasGridUserTried = false;
+ user.HasGridUserTried = isNPC;
m_UserCache.Add(uuid, user);
}
}
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index 09f0b19201..e44f11a54e 100755
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3226,7 +3226,7 @@ namespace OpenSim.Region.Framework.Scenes
if (sp != null && sp.PresenceType == PresenceType.Npc)
{
- UserManagementModule.AddUser(aCircuit.AgentID, first, last);
+ UserManagementModule.AddUser(aCircuit.AgentID, first, last, true);
}
else
{
diff --git a/OpenSim/Services/Interfaces/IUserManagement.cs b/OpenSim/Services/Interfaces/IUserManagement.cs
index 225560e00b..91b344e0dc 100644
--- a/OpenSim/Services/Interfaces/IUserManagement.cs
+++ b/OpenSim/Services/Interfaces/IUserManagement.cs
@@ -79,7 +79,7 @@ namespace OpenSim.Services.Interfaces
///
///
///
- void AddUser(UUID uuid, string firstName, string lastName);
+ void AddUser(UUID uuid, string first, string last, bool isNPC = false);
///
/// Add a user.