https://issues.apache.org/bugzilla/show_bug.cgi?id=48202

           Summary: CellRangeUtil.mergeCellRanges() causes
                    UnsupportedOperationException due to modifying a
                    read-only list
           Product: POI
           Version: 3.5-FINAL
          Platform: PC
        OS/Version: Windows Vista
            Status: NEW
          Severity: normal
          Priority: P2
         Component: HSSF
        AssignedTo: [email protected]
        ReportedBy: [email protected]


Steps to reproduce:
- create an array of CellRangeAddress objects, where at least two are direct 
  neighbours.
- call CellRangeUtil.mergeCellRanges(array)
- You should see an UnsupportedOperationException thrown by AbstractList

Analysis:
The public method CellRangeUtil.mergeCellRanges() wraps an array into an
ArrayList using Arrays.asList(...) to pass the result to the corresponding
private method mergeCellRanges().

Under certain conditions mergeCellRanges() will try to shrink the list to a
smaller size. The error occurs because structural modification of a wrapped
Array is impossible.

Problem: CellRangeUtil line 99, error occurs at line 124

Proposed solution: Copy the array into a list rather than creating a list view
of the array.

-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to