diff --git a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspace.cs b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspace.cs index 52290b2b5653db1eefb706e78f901cb2c000542d..5af8136f976fae506ff38d56c6ec840fdd58a978 100644 --- a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspace.cs +++ b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspace.cs @@ -85,7 +85,9 @@ protected override void OnDocumentClosing(DocumentId documentId) public virtual string GetFilePath(DocumentId documentId) { - return CurrentSolution.GetDocument(documentId)?.FilePath; + var solution = CurrentSolution; + + return (solution.GetDocument(documentId) ?? solution.GetAdditionalDocument(documentId))?.FilePath; } /// diff --git a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspaceImpl.cs b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspaceImpl.cs index f1a5a4ec42a70925fd367969869eaa49d0e8c021..45bc43766055157536264b1867131a020f5f0a26 100644 --- a/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspaceImpl.cs +++ b/src/VisualStudio/Core/Def/Implementation/ProjectSystem/VisualStudioWorkspaceImpl.cs @@ -267,7 +267,7 @@ internal IVisualStudioHostDocument GetHostDocument(DocumentId documentId) } // first make sure we can edit the document we will be updating (check them out from source control, etc) - var changedDocs = projectChanges.SelectMany(pd => pd.GetChangedDocuments(true)).ToList(); + var changedDocs = projectChanges.SelectMany(pd => pd.GetChangedDocuments(true).Concat(pd.GetChangedAdditionalDocuments())).ToList(); if (changedDocs.Count > 0) { this.EnsureEditableDocuments(changedDocs);