This repository was archived by the owner on Dec 24, 2022. It is now read-only.
File tree Expand file tree Collapse file tree 2 files changed +6
-2
lines changed
Expand file tree Collapse file tree 2 files changed +6
-2
lines changed Original file line number Diff line number Diff line change @@ -11,7 +11,7 @@ namespace ServiceStack.Text
1111 public sealed class EmitReflectionOptimizer : ReflectionOptimizer
1212 {
1313 private static EmitReflectionOptimizer provider ;
14- public static EmitReflectionOptimizer Provider => provider ?? ( provider = new EmitReflectionOptimizer ( ) ) ;
14+ public static EmitReflectionOptimizer Provider => provider ??= new EmitReflectionOptimizer ( ) ;
1515 private EmitReflectionOptimizer ( ) { }
1616
1717 public override Type UseType ( Type type )
@@ -52,6 +52,8 @@ public override GetMemberDelegate CreateGetter(PropertyInfo propertyInfo)
5252 }
5353
5454 var mi = propertyInfo . GetGetMethod ( true ) ;
55+ if ( mi == null )
56+ return null ;
5557 gen . Emit ( mi . IsFinal ? OpCodes . Call : OpCodes . Callvirt , mi ) ;
5658
5759 if ( propertyInfo . PropertyType . IsValueType )
@@ -70,6 +72,8 @@ public override GetMemberDelegate<T> CreateGetter<T>(PropertyInfo propertyInfo)
7072
7173 var gen = getter . GetILGenerator ( ) ;
7274 var mi = propertyInfo . GetGetMethod ( true ) ;
75+ if ( mi == null )
76+ return null ;
7377
7478 if ( typeof ( T ) . IsValueType )
7579 {
Original file line number Diff line number Diff line change @@ -36,7 +36,7 @@ public abstract class ReflectionOptimizer
3636 public sealed class RuntimeReflectionOptimizer : ReflectionOptimizer
3737 {
3838 private static RuntimeReflectionOptimizer provider ;
39- public static RuntimeReflectionOptimizer Provider => provider ?? ( provider = new RuntimeReflectionOptimizer ( ) ) ;
39+ public static RuntimeReflectionOptimizer Provider => provider ??= new RuntimeReflectionOptimizer ( ) ;
4040 private RuntimeReflectionOptimizer ( ) { }
4141
4242 public override Type UseType ( Type type ) => type ;
You can’t perform that action at this time.
0 commit comments