From a682fe0f6d60261d9bcd2994bc9926cfdfbaed19 Mon Sep 17 00:00:00 2001 From: Arthit Suriyawongkul Date: Sun, 2 Aug 2026 23:53:03 +0100 Subject: [PATCH 1/2] Handle when cell is null Signed-off-by: Arthit Suriyawongkul --- src/main/java/org/spdx/spreadsheetstore/AnnotationsSheet.java | 3 ++- .../java/org/spdx/spreadsheetstore/RelationshipsSheet.java | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/spdx/spreadsheetstore/AnnotationsSheet.java b/src/main/java/org/spdx/spreadsheetstore/AnnotationsSheet.java index c95b4fd..55c8b5e 100644 --- a/src/main/java/org/spdx/spreadsheetstore/AnnotationsSheet.java +++ b/src/main/java/org/spdx/spreadsheetstore/AnnotationsSheet.java @@ -195,7 +195,8 @@ public String getElmementId(int rowNum) { if (row == null) { return null; } - return row.getCell(ID_COL).getStringCellValue(); + Cell cell = row.getCell(ID_COL); + return cell != null ? cell.getStringCellValue() : null; } /** diff --git a/src/main/java/org/spdx/spreadsheetstore/RelationshipsSheet.java b/src/main/java/org/spdx/spreadsheetstore/RelationshipsSheet.java index 75db3d5..5908547 100644 --- a/src/main/java/org/spdx/spreadsheetstore/RelationshipsSheet.java +++ b/src/main/java/org/spdx/spreadsheetstore/RelationshipsSheet.java @@ -192,7 +192,8 @@ public String getElmementId(int rowNum) { if (row == null) { return null; } - return row.getCell(ID_COL).getStringCellValue(); + Cell cell = row.getCell(ID_COL); + return cell != null ? cell.getStringCellValue() : null; } public Relationship getRelationship(int rowNum) throws SpreadsheetException { From a431072dbd6a5f9e9cf2ba128c7a80533dc8b775 Mon Sep 17 00:00:00 2001 From: Arthit Suriyawongkul Date: Mon, 3 Aug 2026 00:29:36 +0100 Subject: [PATCH 2/2] Short circuit when row.getCell() is null Signed-off-by: Arthit Suriyawongkul --- src/main/java/org/spdx/spreadsheetstore/SnippetSheet.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/spdx/spreadsheetstore/SnippetSheet.java b/src/main/java/org/spdx/spreadsheetstore/SnippetSheet.java index 9a5a9bc..f4dc878 100644 --- a/src/main/java/org/spdx/spreadsheetstore/SnippetSheet.java +++ b/src/main/java/org/spdx/spreadsheetstore/SnippetSheet.java @@ -448,8 +448,8 @@ private String rangeToStr(StartEndPointer rangePointer) throws InvalidSPDXAnalys } SpdxFile snippetFromFile = (SpdxFile)moFromFile.get(); - if (Objects.isNull(row.getCell(BYTE_RANGE_COL)) && row.getCell(BYTE_RANGE_COL).getStringCellValue().trim().isEmpty()) { - throw new SpreadsheetException("Missing reqired byte range for Snippet ID "+id); + if (Objects.isNull(row.getCell(BYTE_RANGE_COL)) || row.getCell(BYTE_RANGE_COL).getStringCellValue().trim().isEmpty()) { + throw new SpreadsheetException("Missing required byte range for Snippet ID "+id); } String range = row.getCell(BYTE_RANGE_COL).getStringCellValue(); int start = 0;