[
https://issues.apache.org/jira/browse/CLK-713?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12889057#action_12889057
]
Bob Schellink commented on CLK-713:
-----------------------------------
We should probably synchronize the MenuFactory.getRootMenu but ensure it is
efficient. I haven't look to deeply at JDK5 concurrency support but something
like the FutureTask might be useful here.
Unless someone beats me to it I'll have a look at this over the weekend.
> Race condition in Menu.getHeadElements
> --------------------------------------
>
> Key: CLK-713
> URL: https://issues.apache.org/jira/browse/CLK-713
> Project: Click
> Issue Type: Bug
> Components: extras
> Reporter: Finn Bock
> Priority: Critical
>
> Multi threads can access a cached Menu while it is being initialized. The
> Exception can be:
> java.lang.ArrayIndexOutOfBoundsException: 2
> at java.util.ArrayList.add(ArrayList.java:352)
> at
> org.apache.click.extras.control.Menu.getHeadElements(Menu.java:1077)
> at
> org.apache.click.util.PageImports.processControl(PageImports.java:37
> Initializing the menu in MenuFactory by calling menu.getHeadElements() seems
> to make the race condition go away.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.