]> source.dussan.org Git - poi.git/commitdiff
bug 56958: validate array formulas wasn't correctly checking for overlap with a merge...
authorJaven O'Neal <onealj@apache.org>
Fri, 17 Jun 2016 10:22:09 +0000 (10:22 +0000)
committerJaven O'Neal <onealj@apache.org>
Fri, 17 Jun 2016 10:22:09 +0000 (10:22 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1748829 13f79535-47bb-0310-9956-ffa450edef68

src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java

index 5b4013b8aa538f289bef20ee402c280069238fc0..0dc1878a97100caab444ed6a4b1a2fb7e7848989 100644 (file)
@@ -395,10 +395,7 @@ public class XSSFSheet extends POIXMLDocumentPart implements Sheet {
 
                 if(cell.isPartOfArrayFormulaGroup()){
                     CellRangeAddress arrayRange = cell.getArrayFormulaRange();
-                    if (arrayRange.getNumberOfCells() > 1 &&
-                            // region.intersects(arrayRange) is more concise and probably correct. Is it equivalent?
-                            ( arrayRange.isInRange(region.getFirstRow(), region.getFirstColumn()) ||
-                              arrayRange.isInRange(region.getFirstRow(), region.getFirstColumn()))  ){
+                    if (arrayRange.getNumberOfCells() > 1 && region.intersects(arrayRange)) {
                         String msg = "The range " + region.formatAsString() + " intersects with a multi-cell array formula. " +
                                 "You cannot merge cells of an array.";
                         throw new IllegalStateException(msg);