diff options
Diffstat (limited to 'tvloader/parser2v2/parse_file.go')
-rw-r--r-- | tvloader/parser2v2/parse_file.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tvloader/parser2v2/parse_file.go b/tvloader/parser2v2/parse_file.go index 86886d3..27ec6a4 100644 --- a/tvloader/parser2v2/parse_file.go +++ b/tvloader/parser2v2/parse_file.go @@ -18,11 +18,19 @@ func (parser *tvParser2_2) parsePairFromFile2_2(tag string, value string) error switch tag { // tag for creating new file section case "FileName": + // check if the previous file contained an spdx Id or not + if parser.file != nil && parser.file.FileSPDXIdentifier == nullSpdxElementId2_2 { + return fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName) + } parser.file = &spdx.File2_2{} parser.file.FileName = value // tag for creating new package section and going back to parsing Package case "PackageName": parser.st = psPackage2_2 + // check if the previous file contained an spdx Id or not + if parser.file != nil && parser.file.FileSPDXIdentifier == nullSpdxElementId2_2 { + return fmt.Errorf("file with FileName %s does not have SPDX identifier", parser.file.FileName) + } parser.file = nil return parser.parsePairFromPackage2_2(tag, value) // tag for going on to snippet section |