mirror of
https://github.com/bloxstraplabs/bloxstrap.git
synced 2025-04-21 10:01:27 -07:00
Merge 1e3f76a2fd
into 1f21e8ce0b
This commit is contained in:
commit
6b7a4dc668
@ -11,14 +11,21 @@ namespace Bloxstrap.Utility
|
|||||||
{
|
{
|
||||||
internal static long GetFreeDiskSpace(string path)
|
internal static long GetFreeDiskSpace(string path)
|
||||||
{
|
{
|
||||||
foreach (var drive in DriveInfo.GetDrives())
|
try
|
||||||
{
|
{
|
||||||
// https://github.com/bloxstraplabs/bloxstrap/issues/1648#issuecomment-2192571030
|
var isUri = Uri.TryCreate(p, UriKind.RelativeOrAbsolute, out var u);
|
||||||
if (path.ToUpperInvariant().StartsWith(drive.Name))
|
if (!Path.IsPathRooted(p) || !Path.IsPathFullyQualified(p) || (isUri && (u?.IsUnc??false)))
|
||||||
return drive.AvailableFreeSpace;
|
{
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
var drive = new DriveInfo(p);
|
||||||
|
return drive.AvailableFreeSpace;
|
||||||
}
|
}
|
||||||
|
catch (ArgumentException e)
|
||||||
return -1;
|
{
|
||||||
|
App.Logger.WriteLine("Filesystem::BadPath", $"The path: {p} does not contain a valid drive info.");
|
||||||
|
return -1
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
internal static void AssertReadOnly(string filePath)
|
internal static void AssertReadOnly(string filePath)
|
||||||
|
Loading…
Reference in New Issue
Block a user