Activity overview
Latest activity by Andy_L
Thanks for the reply Russell. I can understand the reasoning behind the non-inheriting behaviour of the DoNotObfuscate attribute - as you say, there will be many cases where it's the desired outcome. I think the intention would be clearer if the attribute were declared with [AttributeUsage(Inherited=false)]. Also, it would be great if there were another attribute we could use to specify inheriting don't-obfuscate behaviour. Or even a way to exclude an entire inheritance hierarchy in the SmartAssembly UI.
Actually I don't mind having to manually add the attribute to every derived class; what concerns me is the latent bug that's created if we add a new derived class and forget to put [DoNotObfuscate] on it. My equally dirty workaround to guard against that has been to put some debug build-only code in the constructor of the base class, which uses reflection to check for the presence of the attribute every time a derived class is instantiated. I think a better option would be to perform that validation as some sort of custom build step, but that has to wait for another day.
/ comments
Thanks for the reply Russell.I can understand the reasoning behind the non-inheriting behaviour of the DoNotObfuscate attribute - as you say, there will be many cases where it's the desired outcome...
Thanks for confirming the situation Russell. I look forward to hearing your conclusions. / comments
Thanks for confirming the situation Russell. I look forward to hearing your conclusions.
Obfuscation of Serializable type
I've found an issue with SmartAssembly's treatment of serializable types. If I have code like this in a .EXE assembly:public enum MyEnum { value1, value2 }SmartAssembly avoids obfuscating Serializ...