mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-22 12:04:39 +02:00
8062923: XSL: Run-time internal error in 'substring()'
8062924: XSL: wrong answer from substring() function Reviewed-by: joehw
This commit is contained in:
parent
4775e0767d
commit
73a00f6b2f
1 changed files with 5 additions and 4 deletions
|
@ -270,8 +270,8 @@ public final class BasisLibrary {
|
||||||
if (Double.isNaN(start))
|
if (Double.isNaN(start))
|
||||||
return(EMPTYSTRING);
|
return(EMPTYSTRING);
|
||||||
|
|
||||||
final int strlen = value.length();
|
final int strlen = value.length();
|
||||||
int istart = (int)Math.round(start) - 1;
|
int istart = (int)Math.round(start) - 1;
|
||||||
|
|
||||||
if (istart > strlen)
|
if (istart > strlen)
|
||||||
return(EMPTYSTRING);
|
return(EMPTYSTRING);
|
||||||
|
@ -292,10 +292,11 @@ public final class BasisLibrary {
|
||||||
public static String substringF(String value, double start, double length) {
|
public static String substringF(String value, double start, double length) {
|
||||||
if (Double.isInfinite(start) ||
|
if (Double.isInfinite(start) ||
|
||||||
Double.isNaN(start) ||
|
Double.isNaN(start) ||
|
||||||
Double.isNaN(length))
|
Double.isNaN(length) ||
|
||||||
|
length < 0)
|
||||||
return(EMPTYSTRING);
|
return(EMPTYSTRING);
|
||||||
|
|
||||||
int istart = (int)Math.round(start) - 1;
|
int istart = (int)Math.round(start) - 1;
|
||||||
final int isum;
|
final int isum;
|
||||||
if (Double.isInfinite(length))
|
if (Double.isInfinite(length))
|
||||||
isum = Integer.MAX_VALUE;
|
isum = Integer.MAX_VALUE;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue