aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/util/IdentityHashMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/util/IdentityHashMap.java')
-rw-r--r--libjava/java/util/IdentityHashMap.java17
1 files changed, 14 insertions, 3 deletions
diff --git a/libjava/java/util/IdentityHashMap.java b/libjava/java/util/IdentityHashMap.java
index 5a1d76b..c23f8ac 100644
--- a/libjava/java/util/IdentityHashMap.java
+++ b/libjava/java/util/IdentityHashMap.java
@@ -83,11 +83,22 @@ public class IdentityHashMap extends AbstractMap
size = 0;
}
+ /**
+ * Creates a shallow copy where keys and values are not cloned.
+ */
public Object clone ()
{
- IdentityHashMap copy = (IdentityHashMap) super.clone ();
- copy.table = (Object[]) table.clone ();
- return copy;
+ try
+ {
+ IdentityHashMap copy = (IdentityHashMap) super.clone ();
+ copy.table = (Object[]) table.clone ();
+ return copy;
+ }
+ catch (CloneNotSupportedException e)
+ {
+ // Can't happen.
+ return null;
+ }
}
public boolean containsKey (Object key)