diff --git a/OpenMetaverseTypes/UUID.cs b/OpenMetaverseTypes/UUID.cs
index b7205508..263cb1bc 100644
--- a/OpenMetaverseTypes/UUID.cs
+++ b/OpenMetaverseTypes/UUID.cs
@@ -308,7 +308,10 @@ namespace OpenMetaverse
/// 11f8aa9c-b071-4242-836b-13b7abe0d489
public override string ToString()
{
- return Guid.ToString();
+ if (Guid == Guid.Empty)
+ return ZeroString;
+ else
+ return Guid.ToString();
}
#endregion Overrides
@@ -372,5 +375,8 @@ namespace OpenMetaverse
/// An UUID with a value of all zeroes
public static readonly UUID Zero = new UUID();
+
+ /// A cache of UUID.Zero as a string to optimize a common path
+ private static readonly string ZeroString = UUID.Zero.ToString();
}
}