Ensure our array handling only accepts single dimensional arrays.

This commit is contained in:
RoosterDragon
2015-08-26 20:04:51 +01:00
parent 42123d5653
commit 410b97823a
2 changed files with 2 additions and 2 deletions

View File

@@ -417,7 +417,7 @@ namespace OpenRA
} }
else if (fieldType == typeof(bool)) else if (fieldType == typeof(bool))
return ParseYesNo(value, fieldType, fieldName); return ParseYesNo(value, fieldType, fieldName);
else if (fieldType.IsArray) else if (fieldType.IsArray && fieldType.GetArrayRank() == 1)
{ {
if (value == null) if (value == null)
return Array.CreateInstance(fieldType.GetElementType(), 0); return Array.CreateInstance(fieldType.GetElementType(), 0);

View File

@@ -89,7 +89,7 @@ namespace OpenRA
return "{0},{1},{2},{3}".F(r.X, r.Y, r.Width, r.Height); return "{0},{1},{2},{3}".F(r.X, r.Y, r.Width, r.Height);
} }
if (t.IsArray) if (t.IsArray && t.GetArrayRank() == 1)
{ {
var elems = ((Array)v).OfType<object>(); var elems = ((Array)v).OfType<object>();
return elems.JoinWith(", "); return elems.JoinWith(", ");