diff --git a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Archive.cs b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Archive.cs
index ef1b7779..862ecb1c 100644
--- a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Archive.cs
+++ b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Archive.cs
@@ -6,16 +6,16 @@
///
/// Archive header information
///
- public Header? Header { get; set; }
+ public Header Header { get; set; }
///
/// Directories found in the archive
///
- public Directory[]? Directories { get; set; }
+ public Directory[] Directories { get; set; }
///
/// Files found in the archive
///
- public File[]? Files { get; set; }
+ public File[] Files { get; set; }
}
}
diff --git a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Constants.cs b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Constants.cs
index c83e6f89..07b43838 100644
--- a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Constants.cs
+++ b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Constants.cs
@@ -6,4 +6,4 @@ namespace SabreTools.Data.Models.InstallShieldArchiveV3
public static readonly byte[] HeaderSignatureBytes = [0x13, 0x5D, 0x65, 0x8C];
}
-}
\ No newline at end of file
+}
diff --git a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Directory.cs b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Directory.cs
index f2c16e30..53359fbc 100644
--- a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Directory.cs
+++ b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Directory.cs
@@ -24,6 +24,6 @@ namespace SabreTools.Data.Models.InstallShieldArchiveV3
///
/// Name as an ASCII string
///
- public string? Name;
+ public string Name;
}
-}
\ No newline at end of file
+}
diff --git a/SabreTools.Serialization/Models/InstallShieldArchiveV3/File.cs b/SabreTools.Serialization/Models/InstallShieldArchiveV3/File.cs
index 3d94ebfd..61b8bfd3 100644
--- a/SabreTools.Serialization/Models/InstallShieldArchiveV3/File.cs
+++ b/SabreTools.Serialization/Models/InstallShieldArchiveV3/File.cs
@@ -33,6 +33,6 @@ namespace SabreTools.Data.Models.InstallShieldArchiveV3
public byte VolumeStart;
[MarshalAs(UnmanagedType.AnsiBStr)]
- public string? Name;
+ public string Name;
}
-}
\ No newline at end of file
+}
diff --git a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Header.cs b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Header.cs
index 4c90935b..0441f5db 100644
--- a/SabreTools.Serialization/Models/InstallShieldArchiveV3/Header.cs
+++ b/SabreTools.Serialization/Models/InstallShieldArchiveV3/Header.cs
@@ -50,4 +50,4 @@ namespace SabreTools.Data.Models.InstallShieldArchiveV3
public uint Reserved5;
}
-}
\ No newline at end of file
+}
diff --git a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Extraction.cs b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Extraction.cs
index 25560ea8..64a758f6 100644
--- a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Extraction.cs
+++ b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Extraction.cs
@@ -58,8 +58,7 @@ namespace SabreTools.Serialization.Wrappers
// Get the directory name
var dirName = Directories[dirIndex].Name;
- if (dirName != null)
- filename = Path.Combine(dirName, filename);
+ filename = Path.Combine(dirName, filename);
// Get and adjust the file offset
long fileOffset = file.Offset + DataStart;
diff --git a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Printing.cs b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Printing.cs
index 59ec0db1..9897589b 100644
--- a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Printing.cs
+++ b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.Printing.cs
@@ -23,17 +23,10 @@ namespace SabreTools.Serialization.Wrappers
Print(builder, Model.Files);
}
- private static void Print(StringBuilder builder, Header? header)
+ private static void Print(StringBuilder builder, Header header)
{
builder.AppendLine(" Header Information:");
builder.AppendLine(" -------------------------");
- if (header == null)
- {
- builder.AppendLine(" No header");
- builder.AppendLine();
- return;
- }
-
builder.AppendLine(header.Signature1, " Signature 1");
builder.AppendLine(header.Signature2, " Signature 2");
builder.AppendLine(header.Reserved0, " Reserved 0");
@@ -56,11 +49,11 @@ namespace SabreTools.Serialization.Wrappers
builder.AppendLine();
}
- private static void Print(StringBuilder builder, Directory[]? entries)
+ private static void Print(StringBuilder builder, Directory[] entries)
{
builder.AppendLine(" Directories:");
builder.AppendLine(" -------------------------");
- if (entries == null || entries.Length == 0)
+ if (entries.Length == 0)
{
builder.AppendLine(" No directories");
builder.AppendLine();
@@ -80,11 +73,11 @@ namespace SabreTools.Serialization.Wrappers
builder.AppendLine();
}
- private static void Print(StringBuilder builder, File[]? entries)
+ private static void Print(StringBuilder builder, File[] entries)
{
builder.AppendLine(" Files:");
builder.AppendLine(" -------------------------");
- if (entries == null || entries.Length == 0)
+ if (entries.Length == 0)
{
builder.AppendLine(" No files");
builder.AppendLine();
diff --git a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.cs b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.cs
index dac33dc0..af0b3a80 100644
--- a/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.cs
+++ b/SabreTools.Serialization/Wrappers/InstallShieldArchiveV3.cs
@@ -20,16 +20,16 @@ namespace SabreTools.Serialization.Wrappers
#region Extension Properties
///
- public ushort DirCount => Model.Header?.DirCount ?? 0;
+ public ushort DirCount => Model.Header.DirCount;
///
- public ushort FileCount => Model.Header?.FileCount ?? 0;
+ public ushort FileCount => Model.Header.FileCount;
///
- public Data.Models.InstallShieldArchiveV3.Directory[] Directories => Model.Directories ?? [];
+ public Data.Models.InstallShieldArchiveV3.Directory[] Directories => Model.Directories;
///
- public Data.Models.InstallShieldArchiveV3.File[] Files => Model.Files ?? [];
+ public Data.Models.InstallShieldArchiveV3.File[] Files => Model.Files;
///
/// Map of all files to their parent directories by index
@@ -85,8 +85,8 @@ namespace SabreTools.Serialization.Wrappers
// Create the filename
string filename = Path.Combine(
- Directories[dirIndex]?.Name ?? $"dir_{dirIndex}",
- file.Name ?? $"file_{fileIndex}"
+ Directories[dirIndex].Name.Length == 0 ? $"dir_{dirIndex}" : Directories[dirIndex].Name,
+ file.Name.Length == 0 ? $"file_{fileIndex}" : file.Name
);
// Add to the map