From 649f0d4bfaeba04edb66c7d03d0ad74ca44d7e2c Mon Sep 17 00:00:00 2001 From: Vasiliy Bout Date: Tue, 2 Mar 2010 15:34:19 +0000 Subject: [PATCH] ZLTree clear() bugfix git-svn-id: https://only.mawhrin.net/repos/FBReaderJ/trunk@1072 6a642e6f-84f6-412e-ac94-c4a38d5a04b0 --- src/org/geometerplus/zlibrary/core/tree/ZLTree.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/org/geometerplus/zlibrary/core/tree/ZLTree.java b/src/org/geometerplus/zlibrary/core/tree/ZLTree.java index 8804d26b0..8b9ec56c9 100644 --- a/src/org/geometerplus/zlibrary/core/tree/ZLTree.java +++ b/src/org/geometerplus/zlibrary/core/tree/ZLTree.java @@ -108,8 +108,12 @@ public abstract class ZLTree implements Iterable { } public final void clear() { + final int subTreesSize = mySize - 1; mySubTrees = null; mySize = 1; + for (ZLTree parent = Parent; parent != null; parent = parent.Parent) { + parent.mySize -= subTreesSize; + } } public final Iterator iterator() {