diff options
| author | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-16 01:49:40 +0000 |
|---|---|---|
| committer | bryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4> | 2001-02-16 01:49:40 +0000 |
| commit | 0073f26ad231ca80438b13b9c16b19f068f51fd5 (patch) | |
| tree | a7928a2955317cb20bc8a9990d3f02b818efb59f /libjava/java/util/TreeMap.java | |
| parent | d6f8772955bdfe5772a541ab6d927a74ceffc5fb (diff) | |
| download | gcc-0073f26ad231ca80438b13b9c16b19f068f51fd5.tar.gz | |
* java/util/TreeSet.java (clone): Made subclass safe, use
super.clone(), not new.
* java/util/TreeMap.java (clone): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39734 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java/util/TreeMap.java')
| -rw-r--r-- | libjava/java/util/TreeMap.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/libjava/java/util/TreeMap.java b/libjava/java/util/TreeMap.java index 5057d16fede..67ecebdaff1 100644 --- a/libjava/java/util/TreeMap.java +++ b/libjava/java/util/TreeMap.java @@ -56,7 +56,7 @@ import java.io.IOException; * * @author Jon Zeppieri * @author Bryce McKinlay - * @modified $Id: TreeMap.java,v 1.1 2001/02/14 04:44:21 bryce Exp $ + * @modified $Id: TreeMap.java,v 1.2 2001/02/14 05:32:31 bryce Exp $ */ public class TreeMap extends AbstractMap implements SortedMap, Cloneable, Serializable @@ -178,8 +178,14 @@ public class TreeMap extends AbstractMap public Object clone() { - TreeMap copy = new TreeMap(); - copy.comparator = comparator; + TreeMap copy = null; + try + { + copy = (TreeMap) super.clone(); + } + catch (CloneNotSupportedException x) + { + } copy.fabricateTree(size); Node node = firstNode(); @@ -991,6 +997,9 @@ public class TreeMap extends AbstractMap parent.right = node; parent = nextparent; } + + // We use the "right" link to maintain a chain of nodes in + // each row until the parent->child links are established. if (last != null) last.right = node; last = node; |
