From 96860033fb3a83894ce62343567a7802cc0069a6 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Sun, 21 Aug 2011 10:58:16 +1200 Subject: [PATCH] #1121 fixed -- [Sync] and ISync inheritance rules made the same --- OpenRA.Mods.RA/Lint/CheckSyncAnnotations.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/OpenRA.Mods.RA/Lint/CheckSyncAnnotations.cs b/OpenRA.Mods.RA/Lint/CheckSyncAnnotations.cs index 84feceb60d..6a7b343a54 100644 --- a/OpenRA.Mods.RA/Lint/CheckSyncAnnotations.cs +++ b/OpenRA.Mods.RA/Lint/CheckSyncAnnotations.cs @@ -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()) || - ps.Any(p => p.HasAttribute()); + ps.Any(p => p.HasAttribute()) || + HasAnySyncFields(t.BaseType); } } }