Skip to content

Commit 0d88b2b

Browse files
committed
Fix CodeDOM serializer generator does not reset some internal state.
CodeDomContext.ResetCore forgot to clear cached FieldInfo/MethodInfo for non-public member [de]serialization, so extra fields are generated when multiple serializer generation at a time. This fix just add Clear() invocation on ResetCore.
1 parent 91f501e commit 0d88b2b

1 file changed

Lines changed: 2 additions & 0 deletions

File tree

src/MsgPack/Serialization/CodeDomSerializers/CodeDomContext.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,8 @@ protected override void ResetCore( Type targetType )
201201

202202
this._declaringTypes.Add( targetType, declaringType );
203203
this._dependentSerializers.Clear();
204+
this._cachedFieldInfos.Clear();
205+
this._cachedMethodBases.Clear();
204206
this._buildingType = declaringType;
205207

206208
this.Packer = CodeDomConstruct.Parameter( typeof( Packer ), "packer" );

0 commit comments

Comments
 (0)