This fixes a NumberFormatException when a floating point value is given. Instead of parsing the number as an integer, now it parses as a Double and discard the fractional part.
The bug was preventing findbugs to run and was noticed in the mapPoints method. I'm not sure if the others are also a possible source of failure, but my guess is the a value of 10.0px is a valid value like 10.0pt. I've committed this patch. Findbugs shows other troubles, like: Exception in thread "Basic L&F directory loader" java.lang.InterruptedException as well as other html related bugs (hint: try to open the About dialog). I'm still investigating. 2007-10-12 Mario Torre <[EMAIL PROTECTED]> * gnu/javax/swing/text/html/css/FontSize.java (mapPercent): (mapPoints): prevent a NumberFormatException when a floating point is given instead of a integer. (mapPixels): likewise. (mapPercent): likewise. -- Lima Software - http://www.limasoftware.net/ GNU Classpath Developer - http://www.classpath.org/ Fedora Ambassador - http://fedoraproject.org/wiki/MarioTorre Jabber: [EMAIL PROTECTED] pgp key: http://subkeys.pgp.net/ PGP Key ID: 80F240CF Fingerprint: BA39 9666 94EC 8B73 27FA FC7C 4086 63E3 80F2 40CF Please, support open standards: http://opendocumentfellowship.org/petition/ http://www.nosoftwarepatents.com/
### Eclipse Workspace Patch 1.0 #P classpath-clean Index: gnu/javax/swing/text/html/css/FontSize.java =================================================================== RCS file: /sources/classpath/classpath/gnu/javax/swing/text/html/css/FontSize.java,v retrieving revision 1.4 diff -u -r1.4 FontSize.java --- gnu/javax/swing/text/html/css/FontSize.java 30 Nov 2006 13:43:06 -0000 1.4 +++ gnu/javax/swing/text/html/css/FontSize.java 12 Oct 2007 18:33:02 -0000 @@ -143,7 +143,7 @@ { int end = value.indexOf("pt"); String number = value.substring(0, end); - int intVal = Integer.parseInt(number); + int intVal = (int) Double.parseDouble(number); return intVal; } @@ -160,7 +160,7 @@ String number = value.substring(0, end); try { - int intVal = Integer.parseInt(number); + int intVal = (int) Double.parseDouble(number); return intVal; } catch (NumberFormatException ex) @@ -177,7 +177,7 @@ String number = value.substring(0, end); try { - int intVal = Integer.parseInt(number); + int intVal = (int) Double.parseDouble(number); return intVal * par / 100; } catch (NumberFormatException ex)