Bugfix 1086632 [RenameSymbolAsync] throws exception when renaming multiple...
Bugfix 1086632 [RenameSymbolAsync] throws exception when renaming multiple symbols using a solution object / Crash when invoking EncapsulateField on multiple static fields These exceptions and crashes were happening because rename was leaving annotations on nodes even after the rename operation was complete. The ConflictEngine already had a method to RemoveAllRenameAnnotations, but it failed to remove annotated nodes or tokens nested inside other annotated nodes. This change updates RemoveAllRenameAnnotations's call to SyntaxNode.ReplaceSyntax to use computeReplacementNode & computeReplacementToken functions that utilize the "updated" node instead of the "original" node when calculating their replacements, which then preserves any earlier changes to descendant nodes/tokens. (changeset 1406014)
Showing
想要评论请 注册 或 登录