#1121 fixed -- [Sync] and ISync inheritance rules made the same

This commit is contained in:
Chris Forbes
2011-08-21 10:58:16 +12:00
parent 8cc455d23f
commit 96860033fb

View File

@@ -31,12 +31,14 @@ namespace OpenRA.Mods.RA
bool HasAnySyncFields(Type t)
{
var flags = BindingFlags.Public | BindingFlags.NonPublic
| BindingFlags.Instance | BindingFlags.FlattenHierarchy;
| BindingFlags.Instance;
var fs = t.GetFields(flags);
var ps = t.GetProperties(flags);
return fs.Any(f => f.HasAttribute<SyncAttribute>()) ||
ps.Any(p => p.HasAttribute<SyncAttribute>());
ps.Any(p => p.HasAttribute<SyncAttribute>()) ||
HasAnySyncFields(t.BaseType);
}
}
}