MarkupContainer - Method-variable children was stepping-on/masking the
global-variable children
-----------------------------------------------------------------------------------------------
Key: WICKET-2044
URL: https://issues.apache.org/jira/browse/WICKET-2044
Project: Wicket
Issue Type: Bug
Components: wicket
Affects Versions: 1.4-RC1
Environment: Linux ubuntu 2.6.24-23-generic #1 SMP Thu Nov 27 18:13:46
UTC 2008 x86_64 GNU/Linux
java version "1.6.0_07"
Java(TM) SE Runtime Environment (build 1.6.0_07-b06)
Java HotSpot(TM) 64-Bit Server VM (build 10.0-b23, mixed mode)
Reporter: Andy Thomson
Priority: Minor
org.apache.wicket.MarkupContainer
Method variable children was stepping-on/masking the global variable children
in the children_get(), children_indexOf(), children_set() and
onBeforeRenderChildren(). The simple solution was to rename the local method
children to gchildren.
Could not attach diff, so it's pasted below:
# This patch file was generated by NetBeans IDE
# Following Index: paths are relative to:
/home/athomson/Java/Wicket/wicket-svn/wicket/src/main/java/org/apache/wicket
# This patch can be applied using context Tools: Patch action on respective
folder.
# It uses platform neutral UTF-8 encoding and \n newlines.
# Above lines and this line are ignored by the patching process.
Index: MarkupContainer.java
--- MarkupContainer.java Base (BASE)
+++ MarkupContainer.java Locally Modified (Based On LOCAL)
@@ -1043,21 +1043,21 @@
}
else
{
- Object[] children = null;
+ Object[] gchildren = null;
if (this.children instanceof ChildList)
{
// we have a list
- children =
((ChildList)this.children).childs;
+ gchildren =
((ChildList)this.children).childs;
}
else
{
// we have a object array
- children = (Object[])this.children;
+ gchildren = (Object[])this.children;
}
- component = postprocess(children[index],
reconstruct, this, index);
- if (children[index] != component)
+ component = postprocess(gchildren[index],
reconstruct, this, index);
+ if (gchildren[index] != component)
{
- children[index] = component;
+ gchildren[index] = component;
}
}
}
@@ -1112,26 +1112,26 @@
}
else
{
- Object[] children = null;
+ Object[] gchildren = null;
int size = 0;
if (this.children instanceof ChildList)
{
- children = ((ChildList)this.children).childs;
+ gchildren = ((ChildList)this.children).childs;
size = ((ChildList)this.children).size;
}
else
{
- children = (Object[])this.children;
- size = children.length;
+ gchildren = (Object[])this.children;
+ size = gchildren.length;
}
for (int i = 0; i < size; i++)
{
- if (getId(children[i]).equals(id))
+ if (getId(gchildren[i]).equals(id))
{
- component =
(Component)postprocess(children[i], true, this, i);
- if (children[i] != component)
+ component =
(Component)postprocess(gchildren[i], true, this, i);
+ if (gchildren[i] != component)
{
- children[i] = component;
+ gchildren[i] = component;
}
break;
}
@@ -1161,21 +1161,21 @@
else
{
int size = 0;
- Object[] children;
+ Object[] gchildren;
if (this.children instanceof Object[])
{
- children = (Object[])this.children;
- size = children.length;
+ gchildren = (Object[])this.children;
+ size = gchildren.length;
}
else
{
- children = ((ChildList)this.children).childs;
+ gchildren = ((ChildList)this.children).childs;
size = ((ChildList)this.children).size;
}
for (int i = 0; i < size; i++)
{
- if (getId(children[i]).equals(child.getId()))
+ if (getId(gchildren[i]).equals(child.getId()))
{
return i;
}
@@ -1282,9 +1282,9 @@
}
else
{
- final Object[] children =
(Object[])this.children;
- replaced = children[index];
- children[index] = child;
+ final Object[] gchildren =
(Object[])this.children;
+ replaced = gchildren[index];
+ gchildren[index] = child;
}
}
}
@@ -1698,14 +1698,14 @@
// We need to copy the children list because the children
components can
// modify the hierarchy in their onBeforeRender.
- Component[] children = copyChildren();
+ Component[] gchildren = copyChildren();
try
{
// Loop through child components
- for (int i = 0; i < children.length; i++)
+ for (int i = 0; i < gchildren.length; i++)
{
// Get next child
- final Component child = children[i];
+ final Component child = gchildren[i];
// Call begin request on the child
// We need to check whether the child's wasn't
removed from the
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.