diff --git a/DATFromDir/DATFromDir.cs b/DATFromDir/DATFromDir.cs
index a849d139..071bb255 100644
--- a/DATFromDir/DATFromDir.cs
+++ b/DATFromDir/DATFromDir.cs
@@ -15,7 +15,6 @@ namespace SabreTools
///
/// Create a DAT file from a specified file, directory, or set thereof
///
- /// Add SuperDAT functionality
public class DATFromDir
{
// Path-related variables
diff --git a/HashSplit/HashSplit.cs b/HashSplit/HashSplit.cs
index b84d2984..0c92532f 100644
--- a/HashSplit/HashSplit.cs
+++ b/HashSplit/HashSplit.cs
@@ -144,6 +144,7 @@ namespace SabreTools
OutputFormat outputFormat = RomManipulation.GetOutputFormat(filename);
DatData datdata = new DatData
{
+ Description = Path.GetFileNameWithoutExtension(filename),
Roms = new Dictionary>(),
};
datdata = RomManipulation.Parse(filename, 0, 0, datdata, _logger, true);
diff --git a/SabreHelper/Output.cs b/SabreHelper/Output.cs
index e92f1501..40a9203b 100644
--- a/SabreHelper/Output.cs
+++ b/SabreHelper/Output.cs
@@ -127,9 +127,9 @@ namespace SabreTools.Helper
"\t\t" + HttpUtility.HtmlEncode(datdata.Date) + "\n" +
"\t\t" + HttpUtility.HtmlEncode(datdata.Author) + "\n" +
"\t\t" + HttpUtility.HtmlEncode(datdata.Comment) + "\n" +
- (datdata.Type != null && datdata.Type != "" && datdata.ForcePacking != ForcePacking.Unzip ?
+ (!String.IsNullOrEmpty(datdata.Type) && datdata.ForcePacking != ForcePacking.Unzip ?
"\t\t\n" +
- (datdata.Type != null && datdata.Type != "" ? "\t\t\t\n" : "") +
+ (!String.IsNullOrEmpty(datdata.Type) ? "\t\t\t\n" : "") +
(datdata.ForcePacking == ForcePacking.Unzip ? "\t\t\t\n" : "") +
"\t\t\n" : "") +
"\t\n" +
@@ -147,7 +147,7 @@ namespace SabreTools.Helper
"\t\t" + HttpUtility.HtmlEncode(datdata.Date) + "\n" +
"\t\t" + HttpUtility.HtmlEncode(datdata.Author) + "\n" +
"\t\t" + HttpUtility.HtmlEncode(datdata.Comment) + "\n" +
- (datdata.Type != null && datdata.Type != "" ? "\t\t" + datdata.Type + "\n" : "") +
+ (!String.IsNullOrEmpty(datdata.Type) ? "\t\t" + datdata.Type + "\n" : "") +
(datdata.ForcePacking == ForcePacking.Unzip ? "\t\t\n" : "") +
"\t\n";
break;
diff --git a/SabreHelper/RomManipulation.cs b/SabreHelper/RomManipulation.cs
index c89357ee..1e2eb78b 100644
--- a/SabreHelper/RomManipulation.cs
+++ b/SabreHelper/RomManipulation.cs
@@ -144,17 +144,18 @@ namespace SabreTools.Helper
}
// Regardless, end the current folder
- if (parent.Count == 0)
+ int parentcount = parent.Count;
+ if (parentcount == 0)
{
Console.WriteLine("Empty parent: " + String.Join("\\", parent));
empty = true;
}
// If we have an end folder element, remove one item from the parent, if possible
- if (parent.Count > 0)
+ if (parentcount > 0)
{
parent.RemoveAt(parent.Count - 1);
- if (keep)
+ if (keep && parentcount > 1)
{
datdata.Type = (String.IsNullOrEmpty(datdata.Type) ? "SuperDAT" : datdata.Type);
superdat = true;
@@ -194,7 +195,7 @@ namespace SabreTools.Helper
content = headreader.ReadElementContentAsString(); ;
datdata.Name = (String.IsNullOrEmpty(datdata.Name) ? content : datdata.Name);
superdat = superdat || content.Contains(" - SuperDAT");
- if (keep)
+ if (keep && superdat)
{
datdata.Type = (String.IsNullOrEmpty(datdata.Type) ? "SuperDAT" : datdata.Type);
}