aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/ConfigurationMember.cs
diff options
context:
space:
mode:
authorJeff Ames2007-11-17 05:53:12 +0000
committerJeff Ames2007-11-17 05:53:12 +0000
commit946db5461c8262d3b957e42ed7a90feb447c618b (patch)
tree7ba5a76429f19881d684a9c317210f39e4cc70b1 /OpenSim/Framework/ConfigurationMember.cs
parentfixed svn:ignore on POSPlugin (diff)
downloadopensim-SC_OLD-946db5461c8262d3b957e42ed7a90feb447c618b.zip
opensim-SC_OLD-946db5461c8262d3b957e42ed7a90feb447c618b.tar.gz
opensim-SC_OLD-946db5461c8262d3b957e42ed7a90feb447c618b.tar.bz2
opensim-SC_OLD-946db5461c8262d3b957e42ed7a90feb447c618b.tar.xz
catch exceptions when loading malformed xml files
Diffstat (limited to 'OpenSim/Framework/ConfigurationMember.cs')
-rw-r--r--OpenSim/Framework/ConfigurationMember.cs17
1 files changed, 10 insertions, 7 deletions
diff --git a/OpenSim/Framework/ConfigurationMember.cs b/OpenSim/Framework/ConfigurationMember.cs
index e4cd9d8..8e46a04 100644
--- a/OpenSim/Framework/ConfigurationMember.cs
+++ b/OpenSim/Framework/ConfigurationMember.cs
@@ -166,8 +166,16 @@ namespace OpenSim.Framework
166 if (configurationFilename.Trim() != "") 166 if (configurationFilename.Trim() != "")
167 { 167 {
168 configurationPlugin.SetFileName(configurationFilename); 168 configurationPlugin.SetFileName(configurationFilename);
169 configurationPlugin.LoadData(); 169 try
170 useFile = true; 170 {
171 configurationPlugin.LoadData();
172 useFile = true;
173 }
174 catch (XmlException e)
175 {
176 MainLog.Instance.Error("Error loading " + configurationFilename + ": " + e.ToString());
177 useFile = false;
178 }
171 } 179 }
172 else 180 else
173 { 181 {
@@ -189,7 +197,6 @@ namespace OpenSim.Framework
189 bool ignoreNextFromConfig = false; 197 bool ignoreNextFromConfig = false;
190 while (convertSuccess == false) 198 while (convertSuccess == false)
191 { 199 {
192
193 string console_result = ""; 200 string console_result = "";
194 string attribute = null; 201 string attribute = null;
195 if (useFile || (!useFile && configurationFromXMLNode != null)) 202 if (useFile || (!useFile && configurationFromXMLNode != null))
@@ -228,7 +235,6 @@ namespace OpenSim.Framework
228 //Dont Ask! Just use default 235 //Dont Ask! Just use default
229 console_result = configOption.configurationDefault; 236 console_result = configOption.configurationDefault;
230 } 237 }
231
232 } 238 }
233 } 239 }
234 else 240 else
@@ -292,7 +298,6 @@ namespace OpenSim.Framework
292 { 298 {
293 convertSuccess = true; 299 convertSuccess = true;
294 return_result = intResult; 300 return_result = intResult;
295
296 } 301 }
297 errorMessage = "a signed 32 bit integer (int)"; 302 errorMessage = "a signed 32 bit integer (int)";
298 break; 303 break;
@@ -347,7 +352,6 @@ namespace OpenSim.Framework
347 { 352 {
348 convertSuccess = true; 353 convertSuccess = true;
349 return_result = uintResult; 354 return_result = uintResult;
350
351 } 355 }
352 errorMessage = "an unsigned 32 bit integer (uint)"; 356 errorMessage = "an unsigned 32 bit integer (uint)";
353 break; 357 break;
@@ -387,7 +391,6 @@ namespace OpenSim.Framework
387 configurationPlugin.SetAttribute(configOption.configurationKey, console_result); 391 configurationPlugin.SetAttribute(configOption.configurationKey, console_result);
388 } 392 }
389 393
390
391 if (!this.resultFunction(configOption.configurationKey, return_result)) 394 if (!this.resultFunction(configOption.configurationKey, return_result))
392 { 395 {
393 Console.MainLog.Instance.Notice("The handler for the last configuration option denied that input, please try again."); 396 Console.MainLog.Instance.Notice("The handler for the last configuration option denied that input, please try again.");