Skip to content

Commit

Permalink
Validate CreateInMemory parameters
Browse files Browse the repository at this point in the history
  • Loading branch information
jeremy-visionaid committed Dec 5, 2024
1 parent 319c003 commit 01ed146
Showing 1 changed file with 7 additions and 2 deletions.
9 changes: 7 additions & 2 deletions OpenMcdf/RootStorage.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ private static void ThrowIfInvalid(FileAccess access)
private static void ThrowIfLeaveOpen(StorageModeFlags flags)
{
if (flags.HasFlag(StorageModeFlags.LeaveOpen))
throw new ArgumentException($"{StorageModeFlags.LeaveOpen} is not valid for files");
throw new ArgumentException($"{StorageModeFlags.LeaveOpen} is only valid for injected streams.");
}

private static IOContextFlags ToIOContextFlags(StorageModeFlags flags)
Expand Down Expand Up @@ -78,7 +78,12 @@ public static RootStorage Create(Stream stream, Version version = Version.V3, St
return new RootStorage(rootContextSite, flags);
}

public static RootStorage CreateInMemory(Version version = Version.V3, StorageModeFlags flags = StorageModeFlags.None) => Create(new MemoryStream(), version, flags);
public static RootStorage CreateInMemory(Version version = Version.V3, StorageModeFlags flags = StorageModeFlags.None)
{
ThrowIfLeaveOpen(flags);

return Create(new MemoryStream(), version, flags);
}

public static RootStorage Open(string fileName, FileMode mode, StorageModeFlags flags = StorageModeFlags.None)
{
Expand Down

0 comments on commit 01ed146

Please sign in to comment.