2000-09-01 Andrew Haley <aph@redhat.com>
* java/io/StreamTokenizer.java: Don't throw a
NumberFormatException if a field is numeric as far as the
StreamTokenizer is concerned but not as far as Double.valueOf() is
concerned: return a zero instead.
For gcj/141.
From-SVN: r36100
+2000-09-01 Andrew Haley <aph@redhat.com>
+
+ * java/io/StreamTokenizer.java: Don't throw a
+ NumberFormatException if a field is numeric as far as the
+ StreamTokenizer is concerned but not as far as Double.valueOf() is
+ concerned: return a zero instead.
+
2000-08-30 Tom Tromey <tromey@cygnus.com>
* Makefile.in: Rebuilt.
ttype = TT_EOF;
else if (isNumeric(ch))
{
+ boolean isNegative = false;
if (ch == '-')
{
// Read ahead to see if this is an ordinary '-' rather than numeric.
ch = in.read();
- if (ch != TT_EOF)
- in.unread(ch);
if (isNumeric(ch) && ch != '-')
- ch = '-';
+ {
+ isNegative = true;
+ }
else
- return (ttype = '-');
+ {
+ if (ch != TT_EOF)
+ in.unread(ch);
+ return (ttype = '-');
+ }
}
StringBuffer tokbuf = new StringBuffer();
if (ch != TT_EOF)
in.unread(ch);
ttype = TT_NUMBER;
- nval = Double.valueOf(tokbuf.toString()).doubleValue();
+ try
+ {
+ nval = Double.valueOf(tokbuf.toString()).doubleValue();
+ }
+ catch (NumberFormatException _)
+ {
+ nval = 0.0;
+ }
+ if (isNegative)
+ nval = -nval;
}
else if (isAlphabetic(ch))
{