aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs')
-rw-r--r--Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs21
1 files changed, 11 insertions, 10 deletions
diff --git a/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs b/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
index 78b179736..766b03270 100644
--- a/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
+++ b/Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs
@@ -25,20 +25,21 @@ public static class VersionPackageDescriptorExtensions
throw new InvalidDataException("TFP package contains multiple MCU files.");
}
- var mcuFile = descriptor.FileDescriptors.SingleOrDefault(x => x.Destination == VersionFileDestination.Mcu);
-
- if (String.IsNullOrWhiteSpace(mcuFile.Version))
+ if (descriptor.FileDescriptors.GroupBy(x => x.FileName).Any(x => x.Count() > 1))
{
- throw new InvalidDataException("TFP package MCU does specify any version.");
+ throw new InvalidDataException("The TPF package cannot contain duplicate file names.");
}
- try
- {
- Version.Parse(mcuFile.Version);
- }
- catch
+ foreach (var item in descriptor.FileDescriptors)
{
- throw new InvalidDataException($"TFP package MCU version '{mcuFile.Version}' is invalid.");
+ try
+ {
+ Version.Parse(item.Version);
+ }
+ catch
+ {
+ throw new InvalidDataException($"Invalid version ({item.Version}) for file '{item.FileName}'.");
+ }
}
}