You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by pa...@apache.org on 2015/09/16 15:30:36 UTC
wicket git commit: Fixed performance degradation due to component
queueing
Repository: wicket
Updated Branches:
refs/heads/WICKET-5981 [created] 76a771221
Fixed performance degradation due to component queueing
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/76a77122
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/76a77122
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/76a77122
Branch: refs/heads/WICKET-5981
Commit: 76a771221fbd405949bdac402effb6c29a71162c
Parents: 82f7595
Author: Emond Papegaaij <em...@topicus.nl>
Authored: Wed Sep 16 15:30:12 2015 +0200
Committer: Emond Papegaaij <em...@topicus.nl>
Committed: Wed Sep 16 15:30:12 2015 +0200
----------------------------------------------------------------------
.../src/main/java/org/apache/wicket/MarkupContainer.java | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/wicket/blob/76a77122/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java b/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
index c01b90e..3a09e33 100644
--- a/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
+++ b/wicket-core/src/main/java/org/apache/wicket/MarkupContainer.java
@@ -1987,8 +1987,17 @@ public abstract class MarkupContainer extends Component implements Iterable<Comp
}
else
{
- MarkupContainer queueRegion = (MarkupContainer)findParent(IQueueRegion.class);
+ MarkupContainer containerWithQueue = this;
+ while (containerWithQueue.queue == null || containerWithQueue.queue.isEmpty())
+ {
+ containerWithQueue = containerWithQueue.getParent();
+ if (containerWithQueue == null)
+ {
+ return;
+ }
+ }
+ MarkupContainer queueRegion = (MarkupContainer)findParent(IQueueRegion.class);
if (queueRegion != null && !queueRegion.getRequestFlag(RFLAG_CONTAINER_DEQUEING))
{
queueRegion.dequeue();