summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-05 22:33:24 +0000
committerbryce <bryce@138bc75d-0d04-0410-961f-82ee72b054a4>2004-07-05 22:33:24 +0000
commit927b9dc44e53e29bed67e70b90579a7b43d4a915 (patch)
treebbfcd116b53a2cbfc372d791a0a52f5c75cee3d0
parenta00dec3b225c62e5ccee1f89325df3a79f9645d9 (diff)
downloadgcc-927b9dc44e53e29bed67e70b90579a7b43d4a915.tar.gz
2004-07-05 Bryce McKinlay <mckinlay@redhat.com>
* java/util/Locale.java (readObject): Intern strings read from object stream. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84137 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog5
-rw-r--r--libjava/java/util/Locale.java6
2 files changed, 8 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 17c097b307f..1a3822d1d51 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,8 @@
+2004-07-05 Bryce McKinlay <mckinlay@redhat.com>
+
+ * java/util/Locale.java (readObject): Intern strings read from object
+ stream.
+
2004-07-04 Michael Koch <konqueror@gmx.de>
* gnu/gcj/runtime/FirstThread.java,
diff --git a/libjava/java/util/Locale.java b/libjava/java/util/Locale.java
index ca6334cb334..4e8883994ed 100644
--- a/libjava/java/util/Locale.java
+++ b/libjava/java/util/Locale.java
@@ -765,9 +765,9 @@ public final class Locale implements Serializable, Cloneable
private void readObject(ObjectInputStream s)
throws IOException, ClassNotFoundException
{
- language = (String) s.readObject();
- country = (String) s.readObject();
- variant = (String) s.readObject();
+ language = ((String) s.readObject()).intern();
+ country = ((String) s.readObject()).intern();
+ variant = ((String) s.readObject()).intern();
// Recompute hashcode.
hashcode = language.hashCode() ^ country.hashCode() ^ variant.hashCode();
}