Browse Source

Add "Vendor" directory.

Make WpfDesigner GetBitmapExtension.ProvideValue thread-safe.
Make FileUtility.IsBaseDirectory more efficient.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@3142 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 17 years ago
parent
commit
ce1d104029
  1. 3
      data/ConversionStyleSheets/SVNChangelogToXml.xsl
  2. 13
      src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/GetBitmapExtension.cs
  3. 19
      src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs
  4. 3
      src/Main/Core/Test/AddInTreeTests/ExtPathTests.cs

3
data/ConversionStyleSheets/SVNChangelogToXml.xsl

@ -79,6 +79,9 @@ @@ -79,6 +79,9 @@
<xsl:when test="$orig_author = 'robertpickering'">
<xsl:text>Robert Pickering</xsl:text>
</xsl:when>
<xsl:when test="$orig_author = 'siegfriedpammer'">
<xsl:text>Siegfried Pammer</xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="./author" />
</xsl:otherwise>

13
src/AddIns/DisplayBindings/WpfDesign/WpfDesign.AddIn/Src/GetBitmapExtension.cs

@ -23,14 +23,15 @@ namespace ICSharpCode.WpfDesign.AddIn @@ -23,14 +23,15 @@ namespace ICSharpCode.WpfDesign.AddIn
public override object ProvideValue(IServiceProvider sp)
{
BitmapSource result;
if (cache.TryGetValue(key, out result)) {
lock (cache) {
BitmapSource result;
if (!cache.TryGetValue(key, out result)) {
result = GetBitmapSource();
result.Freeze();
cache[key] = result;
}
return result;
}
result = GetBitmapSource();
result.Freeze();
cache[key] = result;
return result;
}
BitmapSource GetBitmapSource()

19
src/Main/Core/Project/Src/Services/FileUtility/FileUtility.cs

@ -257,21 +257,12 @@ namespace ICSharpCode.Core @@ -257,21 +257,12 @@ namespace ICSharpCode.Core
public static bool IsBaseDirectory(string baseDirectory, string testDirectory)
{
try {
baseDirectory = NormalizePath(baseDirectory).ToUpperInvariant();
testDirectory = NormalizePath(testDirectory).ToUpperInvariant();
baseDirectory = baseDirectory.Replace(Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
testDirectory = testDirectory.Replace(Path.AltDirectorySeparatorChar, Path.DirectorySeparatorChar);
if (baseDirectory[baseDirectory.Length - 1] != Path.DirectorySeparatorChar)
baseDirectory += Path.DirectorySeparatorChar;
if (testDirectory[testDirectory.Length - 1] != Path.DirectorySeparatorChar)
testDirectory += Path.DirectorySeparatorChar;
return testDirectory.StartsWith(baseDirectory);
} catch (Exception) {
if (baseDirectory == null || testDirectory == null)
return false;
}
baseDirectory = NormalizePath(baseDirectory) + Path.DirectorySeparatorChar;
testDirectory = NormalizePath(testDirectory) + Path.DirectorySeparatorChar;
return testDirectory.StartsWith(baseDirectory, StringComparison.InvariantCultureIgnoreCase);
}
public static string RenameBaseDirectory(string fileName, string oldDirectory, string newDirectory)

3
src/Main/Core/Test/AddInTreeTests/ExtPathTests.cs

@ -65,6 +65,9 @@ namespace ICSharpCode.Core.Tests.AddInTreeTests.Tests @@ -65,6 +65,9 @@ namespace ICSharpCode.Core.Tests.AddInTreeTests.Tests
{
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a", @"C:\A\b\hello"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a", @"C:\a"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a\", @"C:\a\"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a\", @"C:\a"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a", @"C:\a\"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\A", @"C:\a"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a", @"C:\A"));
Assert.IsTrue(FileUtility.IsBaseDirectory(@"C:\a\x\fWufhweoe", @"C:\a\x\fwuFHweoe\a\b\hello"));

Loading…
Cancel
Save