From 12785cc087281134ab5aaece842f03f3a654be5e Mon Sep 17 00:00:00 2001 From: Natalia Portillo Date: Mon, 29 Jan 2018 17:36:58 +0000 Subject: [PATCH] Skip null terminated strings in ISO9660 fields. (These violate ISO9660). --- DiscImageChef.Filesystems/ISO9660/Structs/CDi.cs | 12 ++++++------ DiscImageChef.Filesystems/ISO9660/Structs/ISO.cs | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/DiscImageChef.Filesystems/ISO9660/Structs/CDi.cs b/DiscImageChef.Filesystems/ISO9660/Structs/CDi.cs index ce00d3c1d..9275dce82 100644 --- a/DiscImageChef.Filesystems/ISO9660/Structs/CDi.cs +++ b/DiscImageChef.Filesystems/ISO9660/Structs/CDi.cs @@ -42,12 +42,12 @@ namespace DiscImageChef.Filesystems.ISO9660 { DecodedVolumeDescriptor decodedVD = new DecodedVolumeDescriptor { - SystemIdentifier = Encoding.ASCII.GetString(pvd.system_id).TrimEnd().Trim('\0'), - VolumeIdentifier = Encoding.ASCII.GetString(pvd.volume_id).TrimEnd().Trim('\0'), - VolumeSetIdentifier = Encoding.ASCII.GetString(pvd.volume_set_id).TrimEnd().Trim('\0'), - PublisherIdentifier = Encoding.ASCII.GetString(pvd.publisher_id).TrimEnd().Trim('\0'), - DataPreparerIdentifier = Encoding.ASCII.GetString(pvd.preparer_id).TrimEnd().Trim('\0'), - ApplicationIdentifier = Encoding.ASCII.GetString(pvd.application_data).TrimEnd().Trim('\0') + SystemIdentifier = StringHandlers.CToString(pvd.system_id).TrimEnd(), + VolumeIdentifier = StringHandlers.CToString(pvd.volume_id).TrimEnd(), + VolumeSetIdentifier = StringHandlers.CToString(pvd.volume_set_id).TrimEnd(), + PublisherIdentifier = StringHandlers.CToString(pvd.publisher_id).TrimEnd(), + DataPreparerIdentifier = StringHandlers.CToString(pvd.preparer_id).TrimEnd(), + ApplicationIdentifier = StringHandlers.CToString(pvd.application_data).TrimEnd() }; if(pvd.creation_date[0] == '0' || pvd.creation_date[0] == 0x00) decodedVD.CreationTime = DateTime.MinValue; diff --git a/DiscImageChef.Filesystems/ISO9660/Structs/ISO.cs b/DiscImageChef.Filesystems/ISO9660/Structs/ISO.cs index 37866aa7e..8cee591bc 100644 --- a/DiscImageChef.Filesystems/ISO9660/Structs/ISO.cs +++ b/DiscImageChef.Filesystems/ISO9660/Structs/ISO.cs @@ -42,12 +42,12 @@ namespace DiscImageChef.Filesystems.ISO9660 { DecodedVolumeDescriptor decodedVD = new DecodedVolumeDescriptor { - SystemIdentifier = Encoding.ASCII.GetString(pvd.system_id).TrimEnd().Trim('\0'), - VolumeIdentifier = Encoding.ASCII.GetString(pvd.volume_id).TrimEnd().Trim('\0'), - VolumeSetIdentifier = Encoding.ASCII.GetString(pvd.volume_set_id).TrimEnd().Trim('\0'), - PublisherIdentifier = Encoding.ASCII.GetString(pvd.publisher_id).TrimEnd().Trim('\0'), - DataPreparerIdentifier = Encoding.ASCII.GetString(pvd.preparer_id).TrimEnd().Trim('\0'), - ApplicationIdentifier = Encoding.ASCII.GetString(pvd.application_data).TrimEnd().Trim('\0') + SystemIdentifier = StringHandlers.CToString(pvd.system_id).TrimEnd(), + VolumeIdentifier = StringHandlers.CToString(pvd.volume_id).TrimEnd(), + VolumeSetIdentifier = StringHandlers.CToString(pvd.volume_set_id).TrimEnd(), + PublisherIdentifier = StringHandlers.CToString(pvd.publisher_id).TrimEnd(), + DataPreparerIdentifier = StringHandlers.CToString(pvd.preparer_id).TrimEnd(), + ApplicationIdentifier = StringHandlers.CToString(pvd.application_data).TrimEnd() }; if(pvd.creation_date[0] == '0' || pvd.creation_date[0] == 0x00) decodedVD.CreationTime = DateTime.MinValue;