From af80ebafedc3f0d993ec7b6786c2cb6c409e4cf4 Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Thu, 22 Feb 2018 17:55:58 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9BFix=20converting=20image=20when=20s?= =?UTF-8?q?ector=20subchannels=20are=20not=20supported=20on=20output=20and?= =?UTF-8?q?=20force=20is=20specified.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DiscImageChef/Commands/ConvertImage.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/DiscImageChef/Commands/ConvertImage.cs b/DiscImageChef/Commands/ConvertImage.cs index b4113c1b4..60621afb6 100644 --- a/DiscImageChef/Commands/ConvertImage.cs +++ b/DiscImageChef/Commands/ConvertImage.cs @@ -243,7 +243,8 @@ namespace DiscImageChef.Commands if(options.Force) { - useLong = false; + if(sectorTag != SectorTagType.CdTrackFlags && sectorTag != SectorTagType.CdTrackIsrc && + sectorTag != SectorTagType.CdSectorSubchannel) useLong = false; continue; } @@ -311,6 +312,9 @@ namespace DiscImageChef.Commands foreach(MediaTagType mediaTag in inputFormat.Info.ReadableMediaTags) { + if(options.Force && !outputFormat.SupportedMediaTags.Contains(mediaTag)) + continue; + DicConsole.WriteLine("Converting media tag {0}", mediaTag); byte[] tag = inputFormat.ReadDiskTag(mediaTag); if(outputFormat.WriteMediaTag(tag, mediaTag)) continue; @@ -412,6 +416,9 @@ namespace DiscImageChef.Commands continue; } + if(options.Force && !outputFormat.SupportedSectorTags.Contains(tag)) + continue; + doneSectors = 0; while(doneSectors < inputFormat.Info.Sectors) { @@ -546,6 +553,9 @@ namespace DiscImageChef.Commands // This tags are inline in long sector continue; } + + if(options.Force && !outputFormat.SupportedSectorTags.Contains(tag)) + continue; foreach(Track track in tracks) {