diff options
Diffstat (limited to 'Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.PMR/ExtensionMethods/VersionPackageDescriptorExtensions.cs | 21 |
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}'."); + } } } |
