diff --git a/OpenSim/Framework/Communications/RestClient.cs b/OpenSim/Framework/Communications/RestClient.cs
index 3035da54a4..db5010bffc 100644
--- a/OpenSim/Framework/Communications/RestClient.cs
+++ b/OpenSim/Framework/Communications/RestClient.cs
@@ -165,7 +165,18 @@ namespace OpenSim.Framework.Communications
/// Value of the parameter, e.g. 42
public void AddQueryParameter(string name, string value)
{
- _parameterElements.Add(HttpUtility.UrlEncode(name), HttpUtility.UrlEncode(value));
+ try
+ {
+ _parameterElements.Add(HttpUtility.UrlEncode(name), HttpUtility.UrlEncode(value));
+ }
+ catch (ArgumentException)
+ {
+ m_log.Error("[REST]: Query parameter " + name + " is already added.");
+ }
+ catch (Exception e)
+ {
+ m_log.Error("[REST]: An exception was raised adding query parameter to dictionary. Exception: {0}",e);
+ }
}
///
@@ -174,7 +185,18 @@ namespace OpenSim.Framework.Communications
/// Name of the parameter, e.g. min
public void AddQueryParameter(string name)
{
- _parameterElements.Add(HttpUtility.UrlEncode(name), null);
+ try
+ {
+ _parameterElements.Add(HttpUtility.UrlEncode(name), null);
+ }
+ catch (ArgumentException)
+ {
+ m_log.Error("[REST]: Query parameter " + name + " is already added.");
+ }
+ catch (Exception e)
+ {
+ m_log.Error("[REST]: An exception was raised adding query parameter to dictionary. Exception: {0}",e);
+ }
}
///