diff options
| -rw-r--r-- | libjava/ChangeLog | 5 | ||||
| -rw-r--r-- | libjava/java/util/Locale.java | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 17c097b..1a3822d 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 ca6334c..4e88839 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(); } |
