Browse Source

Fix MatchDisposeCheck

pull/1165/head
Siegfried Pammer 7 years ago
parent
commit
2ac532b470
  1. 4
      ICSharpCode.Decompiler/IL/Transforms/UsingTransform.cs

4
ICSharpCode.Decompiler/IL/Transforms/UsingTransform.cs

@ -280,7 +280,9 @@ namespace ICSharpCode.Decompiler.IL.Transforms @@ -280,7 +280,9 @@ namespace ICSharpCode.Decompiler.IL.Transforms
return target.MatchLdLocRef(objVar)
|| (boxedValue && target.MatchLdLoc(objVar))
|| (usingNull && callVirt.Arguments[0].MatchLdNull())
|| (target.MatchIsInst(out var arg, out var type2) && arg.MatchLdLoc(objVar) && type2.IsKnownType(KnownTypeCode.IDisposable));
|| (isReference && checkInst is NullableRewrap
&& target.MatchIsInst(out var arg, out var type2)
&& arg.MatchLdLoc(objVar) && type2.IsKnownType(KnownTypeCode.IDisposable));
}
}
}

Loading…
Cancel
Save