You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Tim Ellison (JIRA)" <ji...@apache.org> on 2009/06/16 11:22:07 UTC

[jira] Resolved: (HARMONY-6236) [classlib][luni] ArrayList breaks when given concurrent collections as input

     [ https://issues.apache.org/jira/browse/HARMONY-6236?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tim Ellison resolved HARMONY-6236.
----------------------------------

    Resolution: Fixed

Thanks Jesse.

Patch applied to LUNI module at repo revision r785120.

Please check it was applied as expected.

I suspect there may be more cases like this in the Harmony code...

> [classlib][luni] ArrayList breaks when given concurrent collections as input
> ----------------------------------------------------------------------------
>
>                 Key: HARMONY-6236
>                 URL: https://issues.apache.org/jira/browse/HARMONY-6236
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>    Affects Versions: 5.0M10
>         Environment: SVN Revision: 784898
>            Reporter: Jesse Wilson
>            Assignee: Tim Ellison
>         Attachments: ArrayList_on_concurrent_collections.patch
>
>   Original Estimate: 0.5h
>  Remaining Estimate: 0.5h
>
> new ArrayList() and ArrayList.addAll(Collection) assume the passed-in collection will not change between calls. 
> In the attached test case, a special collection simulates a background thread calling "remove" after the ArrayList has called size(), but before it has called "toArray()". This causes the collection to return a null-padded array, which leads to a corrupt ArrayList. The attached patch fixes the problem.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.