Fix #911 handle perforce files (#400)

- Additional handling of document events with "perforce:" or other SCM strings
- Much of the handling had been added already, but adding in additional validation and ensuring that everywhere `Workspace.GetFile` is called we add a not-null check to avoid null reference errors
This commit is contained in:
Kevin Cunnane
2017-07-05 13:25:05 -07:00
committed by GitHub
parent 2a5ae06f12
commit 3aba287759
16 changed files with 152 additions and 40 deletions

View File

@@ -4,7 +4,7 @@
//
using System;
using System.IO;
namespace Microsoft.SqlTools.ServiceLayer.QueryExecution
namespace Microsoft.SqlTools.ServiceLayer.Utility
{
internal static class FileUtilities
{
@@ -136,8 +136,18 @@ namespace Microsoft.SqlTools.ServiceLayer.QueryExecution
File.SetAttributes(fullFilePath, FileAttributes.Normal);
}
}
internal static ResolvedFile TryGetFullPath(string filePath)
{
try
{
return new ResolvedFile(Path.GetFullPath(filePath), true);
}
catch(NotSupportedException)
{
// This is not a standard path.
return new ResolvedFile(filePath, false);
}
}
}
}