[kaffe] CVS kaffe (robilad): Resynced with GNU Classpath: fix for
Currency
Kaffe CVS
cvs-commits at kaffe.org
Tue Jan 18 06:56:55 PST 2005
PatchSet 5868
Date: 2005/01/18 14:52:19
Author: robilad
Branch: HEAD
Tag: (none)
Log:
Resynced with GNU Classpath: fix for Currency
2005-01-18 Dalibor Topic <robilad at kaffe.org>
Resynced with GNU Classpath.
2005-01-17 Andrew John Hughes <gnu_andrew at member.fsf.org>
* java/util/Currency.java:
(getInstance(String)): catch IllegalArgumentException
for locales without countries
Members:
ChangeLog:1.3410->1.3411
libraries/javalib/java/util/Currency.java:1.11->1.12
Index: kaffe/ChangeLog
diff -u kaffe/ChangeLog:1.3410 kaffe/ChangeLog:1.3411
--- kaffe/ChangeLog:1.3410 Tue Jan 18 13:50:35 2005
+++ kaffe/ChangeLog Tue Jan 18 14:52:19 2005
@@ -1,6 +1,26 @@
2005-01-18 Dalibor Topic <robilad at kaffe.org>
Resynced with GNU Classpath.
+
+ 2005-01-17 Andrew John Hughes <gnu_andrew at member.fsf.org>
+
+ * java/util/Currency.java:
+ (getInstance(String)): catch IllegalArgumentException
+ for locales without countries
+
+2005-01-18 Dalibor Topic <robilad at kaffe.org>
+
+ Resynced with GNU Classpath.
+
+ 2005-01-16 Mark Wielaard <mark at klomp.org>
+
+ Reported by Christian Thalinger <twisti at complang.tuwien.ac.at>
+ * java/lang/ClassLoader.java (getExtClassLoaderUrls): Add check for
+ null returned from getFiles().
+
+2005-01-18 Dalibor Topic <robilad at kaffe.org>
+
+ Resynced with GNU Classpath.
2005-01-15 Andrew John Hughes <gnu_andrew at member.fsf.org>
Index: kaffe/libraries/javalib/java/util/Currency.java
diff -u kaffe/libraries/javalib/java/util/Currency.java:1.11 kaffe/libraries/javalib/java/util/Currency.java:1.12
--- kaffe/libraries/javalib/java/util/Currency.java:1.11 Thu Jan 13 05:55:25 2005
+++ kaffe/libraries/javalib/java/util/Currency.java Tue Jan 18 14:52:22 2005
@@ -41,7 +41,6 @@
import gnu.java.locale.LocaleInformation;
import java.io.IOException;
-import java.io.InputStream;
import java.io.ObjectStreamException;
import java.io.Serializable;
@@ -129,8 +128,7 @@
/* Try and load the properties from our iso4217.properties resource */
try
{
- InputStream propertyStream = Currency.class.getResourceAsStream("iso4217.properties");
- properties.load(propertyStream);
+ properties.load(Currency.class.getResourceAsStream("iso4217.properties"));
}
catch (IOException exception)
{
@@ -170,7 +168,8 @@
/* If there is no country code, return */
if (countryCode.equals(""))
{
- return;
+ throw new
+ IllegalArgumentException("The specified country code is invalid");
}
/* Construct the key for the currency */
currencyKey = countryCode + ".currency";
@@ -250,6 +249,11 @@
*/
Currency newCurrency;
+ if (locale == null || locale.getCountry() == null)
+ {
+ throw new
+ NullPointerException("The locale or its country is null.");
+ }
/* Attempt to get the currency from the cache */
newCurrency = (Currency) cache.get(locale);
if (newCurrency == null)
@@ -300,11 +304,19 @@
/* Loop through each locale, looking for the code */
for (int i = 0;i < allLocales.length; i++)
{
- Currency testCurrency = getInstance (allLocales[i]);
-
- if (testCurrency != null &&
- testCurrency.getCurrencyCode().equals(currencyCode))
- return testCurrency;
+ try
+ {
+ Currency testCurrency = getInstance (allLocales[i]);
+ if (testCurrency != null &&
+ testCurrency.getCurrencyCode().equals(currencyCode))
+ {
+ return testCurrency;
+ }
+ }
+ catch (IllegalArgumentException exception)
+ {
+ /* Ignore locales without valid countries */
+ }
}
/*
* If we get this far, the code is not supported by any of
More information about the kaffe
mailing list