Fix detection of dual layer DVDs. Fixes #377

This commit is contained in:
2020-11-01 18:02:29 +00:00
parent 81e66aa0d4
commit 929569103a
6 changed files with 23 additions and 26 deletions

View File

@@ -312,7 +312,7 @@ namespace Aaru.Core.Devices.Dumping
break; break;
case DiskCategory.DVDR: case DiskCategory.DVDR:
dskType = decPfi.PartVersion == 6 ? MediaType.DVDRDL : MediaType.DVDR; dskType = decPfi.PartVersion >= 6 ? MediaType.DVDRDL : MediaType.DVDR;
break; break;
case DiskCategory.DVDRAM: case DiskCategory.DVDRAM:
@@ -324,7 +324,7 @@ namespace Aaru.Core.Devices.Dumping
break; break;
case DiskCategory.DVDRW: case DiskCategory.DVDRW:
dskType = decPfi.PartVersion == 3 ? MediaType.DVDRWDL : MediaType.DVDRW; dskType = decPfi.PartVersion >= 3 ? MediaType.DVDRWDL : MediaType.DVDRW;
break; break;
case DiskCategory.HDDVDR: case DiskCategory.HDDVDR:

View File

@@ -541,7 +541,7 @@ namespace Aaru.Core.Media.Info
break; break;
case DiskCategory.DVDR: case DiskCategory.DVDR:
MediaType = DecodedPfi.Value.PartVersion == 6 ? MediaType.DVDRDL MediaType = DecodedPfi.Value.PartVersion >= 6 ? MediaType.DVDRDL
: MediaType.DVDR; : MediaType.DVDR;
break; break;
@@ -554,7 +554,7 @@ namespace Aaru.Core.Media.Info
break; break;
case DiskCategory.DVDRW: case DiskCategory.DVDRW:
MediaType = DecodedPfi.Value.PartVersion == 3 ? MediaType.DVDRWDL MediaType = DecodedPfi.Value.PartVersion >= 3 ? MediaType.DVDRWDL
: MediaType.DVDRW; : MediaType.DVDRW;
break; break;

View File

@@ -282,11 +282,11 @@ namespace Aaru.Core
} }
if(dskType == MediaType.DVDR && if(dskType == MediaType.DVDR &&
pfi.Value.PartVersion == 6) pfi.Value.PartVersion >= 6)
dskType = MediaType.DVDRDL; dskType = MediaType.DVDRDL;
if(dskType == MediaType.DVDRW && if(dskType == MediaType.DVDRW &&
pfi.Value.PartVersion == 3) pfi.Value.PartVersion >= 3)
dskType = MediaType.DVDRWDL; dskType = MediaType.DVDRWDL;
if(dskType == MediaType.GOD && if(dskType == MediaType.GOD &&

View File

@@ -405,7 +405,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDR: case DiskCategory.DVDR:
_imageInfo.MediaType = pfi0.Value.PartVersion == 6 ? MediaType.DVDRDL : MediaType.DVDR; _imageInfo.MediaType = pfi0.Value.PartVersion >= 6 ? MediaType.DVDRDL : MediaType.DVDR;
break; break;
case DiskCategory.DVDRAM: case DiskCategory.DVDRAM:
@@ -418,7 +418,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDRW: case DiskCategory.DVDRW:
_imageInfo.MediaType = _imageInfo.MediaType =
pfi0.Value.PartVersion == 3 ? MediaType.DVDRWDL : MediaType.DVDRW; pfi0.Value.PartVersion >= 3 ? MediaType.DVDRWDL : MediaType.DVDRW;
break; break;
case DiskCategory.HDDVDR: case DiskCategory.HDDVDR:

View File

@@ -536,8 +536,7 @@ namespace Aaru.DiscImages
} }
else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(), else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
path.ToUpper(CultureInfo. path.ToUpper(CultureInfo.
CurrentCulture))) != CurrentCulture))) != null)
null)
{ {
chars.FilePath = path.ToUpper(CultureInfo.CurrentCulture); chars.FilePath = path.ToUpper(CultureInfo.CurrentCulture);
@@ -548,8 +547,7 @@ namespace Aaru.DiscImages
} }
else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(), else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
dataFile.Filename.ToLower(CultureInfo. dataFile.Filename.ToLower(CultureInfo.
CurrentCulture))) != CurrentCulture))) != null)
null)
{ {
chars.FilePath = dataFile.Filename.ToLower(CultureInfo.CurrentCulture); chars.FilePath = dataFile.Filename.ToLower(CultureInfo.CurrentCulture);
@@ -560,8 +558,7 @@ namespace Aaru.DiscImages
} }
else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(), else if(filtersList.GetFilter(Path.Combine(imageFilter.GetParentFolder(),
dataFile.Filename.ToUpper(CultureInfo. dataFile.Filename.ToUpper(CultureInfo.
CurrentCulture))) != CurrentCulture))) != null)
null)
{ {
chars.FilePath = dataFile.Filename.ToUpper(CultureInfo.CurrentCulture); chars.FilePath = dataFile.Filename.ToUpper(CultureInfo.CurrentCulture);
@@ -916,7 +913,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDR: case DiskCategory.DVDR:
_imageInfo.MediaType = pfi0.Value.PartVersion == 6 ? MediaType.DVDRDL : MediaType.DVDR; _imageInfo.MediaType = pfi0.Value.PartVersion >= 6 ? MediaType.DVDRDL : MediaType.DVDR;
break; break;
case DiskCategory.DVDRAM: case DiskCategory.DVDRAM:
@@ -928,7 +925,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDRW: case DiskCategory.DVDRW:
_imageInfo.MediaType = pfi0.Value.PartVersion == 3 ? MediaType.DVDRWDL : MediaType.DVDRW; _imageInfo.MediaType = pfi0.Value.PartVersion >= 3 ? MediaType.DVDRWDL : MediaType.DVDRW;
break; break;
case DiskCategory.HDDVDR: case DiskCategory.HDDVDR:

View File

@@ -386,7 +386,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDR: case DiskCategory.DVDR:
_imageInfo.MediaType = decPfi.PartVersion == 6 ? MediaType.DVDRDL : MediaType.DVDR; _imageInfo.MediaType = decPfi.PartVersion >= 6 ? MediaType.DVDRDL : MediaType.DVDR;
break; break;
case DiskCategory.DVDRAM: case DiskCategory.DVDRAM:
@@ -398,7 +398,7 @@ namespace Aaru.DiscImages
break; break;
case DiskCategory.DVDRW: case DiskCategory.DVDRW:
_imageInfo.MediaType = decPfi.PartVersion == 3 ? MediaType.DVDRWDL : MediaType.DVDRW; _imageInfo.MediaType = decPfi.PartVersion >= 3 ? MediaType.DVDRWDL : MediaType.DVDRW;
break; break;
case DiskCategory.HDDVDR: case DiskCategory.HDDVDR: