Updated Branches: refs/heads/wicket-1.5.x 7757b3701 -> ee7447c86
WICKET-4867 Detach the object before calculating its size Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/ee7447c8 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/ee7447c8 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/ee7447c8 Branch: refs/heads/wicket-1.5.x Commit: ee7447c8627f04d84d7165ecc3e18b3ab335e8ff Parents: 7757b37 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Thu Nov 15 10:02:50 2012 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Thu Nov 15 10:03:39 2012 +0200 ---------------------------------------------------------------------- .../org/apache/wicket/util/lang/WicketObjects.java | 10 ++++++++++ 1 files changed, 10 insertions(+), 0 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/ee7447c8/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java b/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java index a1c1500..27ea1be 100644 --- a/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java +++ b/wicket-core/src/main/java/org/apache/wicket/util/lang/WicketObjects.java @@ -31,6 +31,7 @@ import org.apache.wicket.Application; import org.apache.wicket.Component; import org.apache.wicket.WicketRuntimeException; import org.apache.wicket.application.IClassResolver; +import org.apache.wicket.model.IDetachable; import org.apache.wicket.serialize.ISerializer; import org.apache.wicket.serialize.java.JavaSerializer; import org.apache.wicket.settings.IApplicationSettings; @@ -416,6 +417,15 @@ public class WicketObjects */ public static long sizeof(final Serializable object) { + if (object instanceof Component) + { + ((Component) object).detach(); + } + else if (object instanceof IDetachable) + { + ((IDetachable) object).detach(); + } + return objectSizeOfStrategy.sizeOf(object); } }
