[
https://issues.apache.org/jira/browse/COLLECTIONS-331?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Michael Krkoska updated COLLECTIONS-331:
----------------------------------------
Attachment: COLLECTIONS-331.patch
This patch fixes the bug by using ComparableComparator if the comparator is
null.
Testcase is adapted as well.
> CollatingIterator NPE when Comparator is null
> ---------------------------------------------
>
> Key: COLLECTIONS-331
> URL: https://issues.apache.org/jira/browse/COLLECTIONS-331
> Project: Commons Collections
> Issue Type: Bug
> Components: Iterator
> Affects Versions: 3.2
> Reporter: Michael Krkoska
> Priority: Minor
> Attachments: CollatingIteratorTest.java, COLLECTIONS-331.patch
>
> Original Estimate: 0.08h
> Remaining Estimate: 0.08h
>
> Run the attached Test against commons-collections-3.2.1. While the JavaDoc
> for CollatingIterator claims
> {...@param comp the comparator to use to sort, or null to use natural sort
> order}}
> the test fails, because the comparator is null.
> Fixing this requires a change in
> {{org.apache.commons.collections.iterators.CollatingIterator.least()}}:
> {code}
> if (comparator.compare(curObject,leastObject) < 0) { ...
> {code}
> could be replaced with
> {code}
> int c =
> comparator==null?((Comparable)curObject).compareTo(leastObject):comparator.compare(curObject,leastObject);
> if (c < 0) { ...
> {code}
> The workaround is to provide a comparator, of course.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.