From d0c707209abf50902d4fb748138d8a52070ea3ed Mon Sep 17 00:00:00 2001
From: Melanie
Date: Sat, 23 Oct 2010 22:40:56 +0100
Subject: Prevent an exception if a string passed into
 llXorBase64StringsCorrect is not a base 64 string. Return the empty string in
 this case.

---
 .../ScriptEngine/Shared/Api/Implementation/LSL_Api.cs       | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 3249ae2..36ca542 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -10145,8 +10145,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
             if (str2 == String.Empty)
                 return str1;
 
-            byte[] data1 = Convert.FromBase64String(str1);
-            byte[] data2 = Convert.FromBase64String(str2);
+            byte[] data1;
+            byte[] data2;
+            try
+            {
+                data1 = Convert.FromBase64String(str1);
+                data2 = Convert.FromBase64String(str2);
+            }
+            catch (Exception)
+            {
+                return new LSL_String(String.Empty);
+            }
 
             byte[] d2 = new Byte[data1.Length];
             int pos = 0;
-- 
cgit v1.1