Skip to content

Commit 2bd4075

Browse files
authored
Update to OpenMcdf 3.0.3 (#605)
1 parent 61cc862 commit 2bd4075

6 files changed

Lines changed: 22 additions & 13 deletions

File tree

src/Directory.Build.props

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,9 @@
33
<PropertyGroup>
44
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
55
<LangVersion>preview</LangVersion>
6-
<SignAssembly>true</SignAssembly>
6+
<SignAssembly>false</SignAssembly>
77
<NoWarn>NU1608</NoWarn>
8-
<AssemblyOriginatorKeyFile>../key.snk</AssemblyOriginatorKeyFile>
9-
<Version>2.0.1</Version>
8+
<Version>3.0.0</Version>
109
<AssemblyVersion>1.0.0</AssemblyVersion>
1110
<PublishRepositoryUrl>true</PublishRepositoryUrl>
1211
<DebugType>embedded</DebugType>

src/Directory.Packages.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<PackageVersion Include="MarkdownSnippets.MsBuild" Version="28.0.0-beta.2" />
88
<PackageVersion Include="Microsoft.CSharp" Version="4.7.0" />
99
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
10-
<PackageVersion Include="OpenMcdf" Version="2.4.1" />
10+
<PackageVersion Include="OpenMcdf" Version="3.0.3" />
1111
<PackageVersion Include="Polyfill" Version="8.8.1" />
1212
<PackageVersion Include="ProjectDefaults" Version="1.0.157" />
1313
<PackageVersion Include="Verify.DiffPlex" Version="3.1.2" />
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
[assembly:InternalsVisibleTo("Tests, PublicKey=0024000004800000940000000602000000240000525341310004000001000100638A43140E8A1271C1453DF1379E64B40B67A1F333864C1AEF5AC318A0FA2008545C3D35A82EF005EDF0DE1AD1E1EA155722FE289DF0E462F78C40A668CBC96D7BE1D487FAEF5714A54BB4E57909C86B3924C2DB6D55CCF59939B99EB0CAB6E8A91429BA0CE630C08A319B323BDDCBBD509F1AFE4AE77A6CBB8B447F588FEBC3")]
1+
[assembly:InternalsVisibleTo("Tests")]

src/SetStartupProjects/Resource.cs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
{
33
static Assembly assembly = typeof(Resource).Assembly;
44

5-
public static Stream AsStream(string name) =>
6-
assembly.GetManifestResourceStream($"SetStartupProjects.{name}")!;
5+
public static MemoryStream AsStream(string name)
6+
{
7+
using var stream = assembly.GetManifestResourceStream($"SetStartupProjects.{name}")!;
8+
var memoryStream = new MemoryStream();
9+
stream.CopyTo(memoryStream);
10+
return memoryStream;
11+
}
712
}

src/SetStartupProjects/StartProjectSuoCreator.cs

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,16 @@ static void Write(List<string> startupProjectGuids, string solutionDirectory, st
4848
using var stream = Resource.AsStream($"Solution{resourceKey}.suotemplate");
4949
try
5050
{
51-
using var compoundFile = new CompoundFile(stream, CFSUpdateMode.ReadOnly, CFSConfiguration.SectorRecycle | CFSConfiguration.EraseFreeSectors);
52-
compoundFile.RootStorage.Delete("SolutionConfiguration");
53-
var solutionConfiguration = compoundFile.RootStorage.AddStream("SolutionConfiguration");
51+
using var root = RootStorage.Open(stream);
52+
root.Delete("SolutionConfiguration");
53+
var solutionConfiguration = root.CreateStream("SolutionConfiguration");
5454

5555
SetSolutionConfigValue(solutionConfiguration, startupProjectGuids);
56-
compoundFile.SaveAs(suoFilePath);
56+
57+
using var fileStream = new FileStream(suoFilePath, FileMode.CreateNew);
58+
stream.Position = 0;
59+
stream.CopyTo(fileStream);
60+
fileStream.Flush();
5761
}
5862
catch (Exception exception)
5963
{
@@ -63,7 +67,7 @@ static void Write(List<string> startupProjectGuids, string solutionDirectory, st
6367
}
6468
}
6569

66-
static void SetSolutionConfigValue(CFStream cfStream, IEnumerable<string> startupProjectGuids)
70+
static void SetSolutionConfigValue(CfbStream cfStream, IEnumerable<string> startupProjectGuids)
6771
{
6872
var single = Encoding.GetEncodings()
6973
.Single(_ => string.Equals(_.Name, "utf-16", StringComparison.OrdinalIgnoreCase));
@@ -97,6 +101,7 @@ static void SetSolutionConfigValue(CFStream cfStream, IEnumerable<string> startu
97101
}
98102

99103
var newBytes = encoding.GetBytes(builder.ToString());
100-
cfStream.SetData(newBytes);
104+
cfStream.Write(newBytes);
105+
cfStream.Flush();
101106
}
102107
}

src/key.snk

-596 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)