mirror of
https://github.com/aaru-dps/Aaru.git
synced 2025-12-16 19:24:25 +00:00
[SIDECAR] Fix creation of metadata sidecar for optical media images not mounting supported filesystems.
This commit is contained in:
@@ -537,9 +537,27 @@ public sealed partial class Sidecar
|
||||
|
||||
if(!fs.Identify(image, partition)) continue;
|
||||
|
||||
fs.GetInformation(image, partition, encoding, out _, out FileSystem fsMetadata);
|
||||
lstFs.Add(fsMetadata);
|
||||
Statistics.AddFilesystem(fsMetadata.Type);
|
||||
FileSystem fsMetadata = new();
|
||||
|
||||
if(fs is IReadOnlyFilesystem rofs &&
|
||||
rofs.Mount(image, partition, encoding, null, null) == ErrorNumber.NoError)
|
||||
{
|
||||
UpdateStatus(string.Format(Localization.Core.Mounting_0, rofs.Metadata.Type));
|
||||
|
||||
rofs.Metadata.Contents = Files(rofs);
|
||||
|
||||
lstFs.Add(rofs.Metadata);
|
||||
Statistics.AddFilesystem(rofs.Metadata.Type);
|
||||
|
||||
rofs.Unmount();
|
||||
}
|
||||
else
|
||||
{
|
||||
fs.GetInformation(image, partition, encoding, out _, out fsMetadata);
|
||||
|
||||
lstFs.Add(fsMetadata);
|
||||
Statistics.AddFilesystem(fsMetadata.Type);
|
||||
}
|
||||
|
||||
dskType = fsMetadata.Type switch
|
||||
{
|
||||
@@ -597,9 +615,27 @@ public sealed partial class Sidecar
|
||||
|
||||
if(!fs.Identify(image, xmlPart)) continue;
|
||||
|
||||
fs.GetInformation(image, xmlPart, encoding, out _, out FileSystem fsMetadata);
|
||||
lstFs.Add(fsMetadata);
|
||||
Statistics.AddFilesystem(fsMetadata.Type);
|
||||
FileSystem fsMetadata = new();
|
||||
|
||||
if(fs is IReadOnlyFilesystem rofs &&
|
||||
rofs.Mount(image, xmlPart, encoding, null, null) == ErrorNumber.NoError)
|
||||
{
|
||||
UpdateStatus(string.Format(Localization.Core.Mounting_0, rofs.Metadata.Type));
|
||||
|
||||
rofs.Metadata.Contents = Files(rofs);
|
||||
|
||||
lstFs.Add(rofs.Metadata);
|
||||
Statistics.AddFilesystem(rofs.Metadata.Type);
|
||||
|
||||
rofs.Unmount();
|
||||
}
|
||||
else
|
||||
{
|
||||
fs.GetInformation(image, xmlPart, encoding, out _, out fsMetadata);
|
||||
|
||||
lstFs.Add(fsMetadata);
|
||||
Statistics.AddFilesystem(fsMetadata.Type);
|
||||
}
|
||||
|
||||
dskType = fsMetadata.Type switch
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user