diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs index 91cddf1ff9..df049d8f85 100644 --- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs +++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs @@ -2254,7 +2254,15 @@ namespace OpenSim.Region.ScriptEngine.Common break; case (int)LSL_BaseClass.PSYS_SRC_TARGET_KEY: - prules.Target = new LLUUID(rules.Data[i + 1].ToString()); + LLUUID key = LLUUID.Zero; + if (LLUUID.TryParse(rules.Data[i + 1].ToString(), out key)) + { + prules.Target = key; + } + else + { + prules.Target = m_host.UUID; + } break; case (int)LSL_BaseClass.PSYS_SRC_OMEGA: