diff --git a/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java b/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java index b221bf5491..8d37d10709 100644 --- a/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java +++ b/poi-ooxml/src/main/java/org/apache/poi/xssf/usermodel/XSSFCellStyle.java @@ -833,12 +833,15 @@ public class XSSFCellStyle implements CellStyle, Duplicatable { * Set the background fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value. *
* @param color the color to use + * @throws IllegalArgumentException if you provide a Color instance that is not a {@link XSSFColor} * @since POI 5.2.3 */ @Override public void setFillBackgroundColor(org.apache.poi.ss.usermodel.Color color) { if (color instanceof XSSFColor) { setFillBackgroundColor((XSSFColor)color); + } else { + throw new IllegalArgumentException("XSSFCellStyle only accepts XSSFColor instances"); } } @@ -900,12 +903,15 @@ public class XSSFCellStyle implements CellStyle, Duplicatable { * Set the foreground fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value. *
* @param color the color to use + * @throws IllegalArgumentException if you provide a Color instance that is not a {@link XSSFColor} * @since POI 5.2.3 */ @Override public void setFillForegroundColor(org.apache.poi.ss.usermodel.Color color) { if (color instanceof XSSFColor) { setFillForegroundColor((XSSFColor)color); + } else { + throw new IllegalArgumentException("XSSFCellStyle only accepts XSSFColor instances"); } } diff --git a/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java b/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java index 9bb826d56a..bff242f0c4 100644 --- a/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java +++ b/poi/src/main/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java @@ -642,6 +642,7 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable { * Set the background fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value. *
* @param color the color to use + * @throws IllegalArgumentException if you provide a Color instance that is not a {@link HSSFColor} * @since POI 5.2.3 */ @Override @@ -650,6 +651,8 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable { if (color instanceof HSSFColor) { short index2 = ((HSSFColor)color).getIndex2(); if (index2 != -1) setFillBackgroundColor(index2); + } else { + throw new IllegalArgumentException("HSSFCellStyle only accepts HSSFColor instances"); } } @@ -698,6 +701,7 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable { * Set the foreground fill color represented as a {@link org.apache.poi.ss.usermodel.Color} value. *
* @param color the color to use + * @throws IllegalArgumentException if you provide a Color instance that is not a {@link HSSFColor} * @since POI 5.2.3 */ @Override @@ -706,6 +710,8 @@ public final class HSSFCellStyle implements CellStyle, Duplicatable { if (color instanceof HSSFColor) { short index2 = ((HSSFColor)color).getIndex2(); if (index2 != -1) setFillForegroundColor(index2); + } else { + throw new IllegalArgumentException("HSSFCellStyle only accepts HSSFColor instances"); } }