diff --git a/SabreTools.Library/Dats/Partials/DatFile.ConvertUpdate.cs b/SabreTools.Library/Dats/Partials/DatFile.ConvertUpdate.cs
index 8c0fcde1..cd372a92 100644
--- a/SabreTools.Library/Dats/Partials/DatFile.ConvertUpdate.cs
+++ b/SabreTools.Library/Dats/Partials/DatFile.ConvertUpdate.cs
@@ -236,11 +236,8 @@ namespace SabreTools.Library.Dats
interOutDir = Path.GetDirectoryName(Path.Combine(Environment.CurrentDirectory, splitpath[0].Remove(0, splitpath[1].Length + 1)));
}
- // Once we're done, we check to see if there's anything to write out
- if (intDat.Count > 0)
- {
- intDat.WriteToFile(interOutDir);
- }
+ // Once we're done, try writing out
+ intDat.WriteToFile(interOutDir);
// Due to possible memory requirements, we force a garbage collection
GC.Collect();
diff --git a/SabreTools.Library/Dats/Partials/DatFile.Writers.cs b/SabreTools.Library/Dats/Partials/DatFile.Writers.cs
index f5273fdb..a15c683d 100644
--- a/SabreTools.Library/Dats/Partials/DatFile.Writers.cs
+++ b/SabreTools.Library/Dats/Partials/DatFile.Writers.cs
@@ -1604,70 +1604,42 @@ namespace SabreTools.Library.Dats
{
string footer = "";
- // If we have roms, output the full footer
- if (Count > 0)
+ // Output the proper footer
+ switch (datFormat)
{
- switch (datFormat)
- {
- case DatFormat.ClrMamePro:
- case DatFormat.DOSCenter:
- footer = ")\n";
- break;
- case DatFormat.Logiqx:
- footer = "\t\n\n";
- break;
- case DatFormat.OfflineList:
- footer = "\t\t"
- + "\t\n"
- + "\t\n"
- + "\t\t\n"
- + "\t\t\t\n"
- + "\t\t\t\n"
- + "\t\t\n"
- + "\t\n"
- + "";
- break;
- case DatFormat.SabreDat:
- for (int i = depth - 1; i >= 2; i--)
+ case DatFormat.ClrMamePro:
+ case DatFormat.DOSCenter:
+ footer = ")\n";
+ break;
+ case DatFormat.Logiqx:
+ footer = "\t\n\n";
+ break;
+ case DatFormat.OfflineList:
+ footer = "\t\t"
+ + "\t\n"
+ + "\t\n"
+ + "\t\t\n"
+ + "\t\t\t\n"
+ + "\t\t\t\n"
+ + "\t\t\n"
+ + "\t\n"
+ + "";
+ break;
+ case DatFormat.SabreDat:
+ for (int i = depth - 1; i >= 2; i--)
+ {
+ // Print out the number of tabs and the end folder
+ for (int j = 0; j < i; j++)
{
- // Print out the number of tabs and the end folder
- for (int j = 0; j < i; j++)
- {
- footer += "\t";
- }
- footer += "\n";
+ footer += "\t";
}
- footer += "\t\n\n";
- break;
- case DatFormat.SoftwareList:
- footer = "\t\n\n\n";
- break;
- }
- }
-
- // Otherwise, output the abbreviated form
- else
- {
- switch (datFormat)
- {
- case DatFormat.Logiqx:
- case DatFormat.SabreDat:
- footer = "\n";
- break;
- case DatFormat.OfflineList:
- footer = "\t\n"
- + "\t\n"
- + "\t\t\n"
- + "\t\t\t\n"
- + "\t\t\t\n"
- + "\t\t\n"
- + "\t\n"
- + "";
- break;
- case DatFormat.SoftwareList:
- footer = "\n";
- break;
- }
+ footer += "\n";
+ }
+ footer += "\t\n\n";
+ break;
+ case DatFormat.SoftwareList:
+ footer = "\t\n\n\n";
+ break;
}
// Write the footer out