diff --git a/jdk/src/java.base/share/classes/java/net/CookieManager.java b/jdk/src/java.base/share/classes/java/net/CookieManager.java index 15d4cc33e08..4dbc9aa2dfa 100644 --- a/jdk/src/java.base/share/classes/java/net/CookieManager.java +++ b/jdk/src/java.base/share/classes/java/net/CookieManager.java @@ -368,7 +368,7 @@ public class CookieManager extends CookieHandler int val = -1; while (i > 0) { try { - val = Integer.parseInt(lst.substring(0, i)); + val = Integer.parseInt(lst, 0, i, 10); if (val == port) { return true; } diff --git a/jdk/src/java.base/share/classes/java/net/URI.java b/jdk/src/java.base/share/classes/java/net/URI.java index 62dea657c04..c656ac71c11 100644 --- a/jdk/src/java.base/share/classes/java/net/URI.java +++ b/jdk/src/java.base/share/classes/java/net/URI.java @@ -3250,7 +3250,7 @@ public final class URI if (q > p) { checkChars(p, q, L_DIGIT, H_DIGIT, "port number"); try { - port = Integer.parseInt(substring(p, q)); + port = Integer.parseInt(input, p, q, 10); } catch (NumberFormatException x) { fail("Malformed port number", p); } @@ -3271,7 +3271,7 @@ public final class URI int p = start; int q = scan(p, n, L_DIGIT, H_DIGIT); if (q <= p) return q; - if (Integer.parseInt(substring(p, q)) > 255) return p; + if (Integer.parseInt(input, p, q, 10) > 255) return p; return q; } diff --git a/jdk/src/java.base/share/classes/java/net/URLDecoder.java b/jdk/src/java.base/share/classes/java/net/URLDecoder.java index 2c65c95fefc..9aa5ddc2039 100644 --- a/jdk/src/java.base/share/classes/java/net/URLDecoder.java +++ b/jdk/src/java.base/share/classes/java/net/URLDecoder.java @@ -171,7 +171,7 @@ public class URLDecoder { while ( ((i+2) < numChars) && (c=='%')) { - int v = Integer.parseInt(s.substring(i+1,i+3),16); + int v = Integer.parseInt(s, i + 1, i + 3, 16); if (v < 0) throw new IllegalArgumentException("URLDecoder: Illegal hex characters in escape (%) pattern - negative value"); bytes[pos++] = (byte) v; diff --git a/jdk/src/java.base/share/classes/java/net/URLStreamHandler.java b/jdk/src/java.base/share/classes/java/net/URLStreamHandler.java index 9ea65260f3d..56506ba33bb 100644 --- a/jdk/src/java.base/share/classes/java/net/URLStreamHandler.java +++ b/jdk/src/java.base/share/classes/java/net/URLStreamHandler.java @@ -196,7 +196,8 @@ public abstract class URLStreamHandler { ++ind ; // port can be null according to RFC2396 if (nhost.length() > (ind + 1)) { - port = Integer.parseInt(nhost.substring(ind+1)); + port = Integer.parseInt(nhost, ind + 1, + nhost.length(), 10); } } else { throw new IllegalArgumentException( @@ -213,7 +214,8 @@ public abstract class URLStreamHandler { if (ind >= 0) { // port can be null according to RFC2396 if (host.length() > (ind + 1)) { - port = Integer.parseInt(host.substring(ind + 1)); + port = Integer.parseInt(host, ind + 1, + host.length(), 10); } host = host.substring(0, ind); } diff --git a/jdk/src/java.base/share/classes/sun/net/TransferProtocolClient.java b/jdk/src/java.base/share/classes/sun/net/TransferProtocolClient.java index 2c3ae2e1f6e..b3a9fd556e6 100644 --- a/jdk/src/java.base/share/classes/sun/net/TransferProtocolClient.java +++ b/jdk/src/java.base/share/classes/sun/net/TransferProtocolClient.java @@ -80,7 +80,7 @@ public class TransferProtocolClient extends NetworkClient { code = -1; } else { try { - code = Integer.parseInt(response.substring(0, 3)); + code = Integer.parseInt(response, 0, 3, 10); } catch (NumberFormatException e) { code = -1; } catch (StringIndexOutOfBoundsException e) { diff --git a/jdk/src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java b/jdk/src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java index 5f8c8586072..61ab2fbb9d3 100644 --- a/jdk/src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java +++ b/jdk/src/java.base/share/classes/sun/net/ftp/impl/FtpClient.java @@ -260,8 +260,8 @@ public class FtpClient extends sun.net.ftp.FtpClient { if (d != null && time != null) { int c = time.indexOf(':'); now.setTime(d); - now.set(Calendar.HOUR, Integer.parseInt(time.substring(0, c))); - now.set(Calendar.MINUTE, Integer.parseInt(time.substring(c + 1))); + now.set(Calendar.HOUR, Integer.parseInt(time, 0, c, 10)); + now.set(Calendar.MINUTE, Integer.parseInt(time, c + 1, time.length(), 10)); d = now.getTime(); } // see if it's a symbolic link, i.e. the name if followed @@ -437,7 +437,7 @@ public class FtpClient extends sun.net.ftp.FtpClient { code = -1; } else { try { - code = Integer.parseInt(response.substring(0, 3)); + code = Integer.parseInt(response, 0, 3, 10); } catch (NumberFormatException e) { code = -1; } catch (StringIndexOutOfBoundsException e) { diff --git a/jdk/src/java.base/share/classes/sun/net/www/ParseUtil.java b/jdk/src/java.base/share/classes/sun/net/www/ParseUtil.java index cb8311996b1..1c9abf9d1f4 100644 --- a/jdk/src/java.base/share/classes/sun/net/www/ParseUtil.java +++ b/jdk/src/java.base/share/classes/sun/net/www/ParseUtil.java @@ -161,7 +161,7 @@ public class ParseUtil { * Un-escape and return the character at position i in string s. */ private static byte unescape(String s, int i) { - return (byte) Integer.parseInt(s.substring(i+1,i+3),16); + return (byte) Integer.parseInt(s, i + 1, i + 3, 16); } diff --git a/jdk/src/java.base/share/classes/sun/net/www/http/ChunkedInputStream.java b/jdk/src/java.base/share/classes/sun/net/www/http/ChunkedInputStream.java index 222ddc0ba1c..3f36aa11653 100644 --- a/jdk/src/java.base/share/classes/sun/net/www/http/ChunkedInputStream.java +++ b/jdk/src/java.base/share/classes/sun/net/www/http/ChunkedInputStream.java @@ -313,7 +313,7 @@ class ChunkedInputStream extends InputStream implements Hurryable { break; } try { - chunkSize = Integer.parseInt(header.substring(0, i), 16); + chunkSize = Integer.parseInt(header, 0, i, 16); } catch (NumberFormatException e) { error = true; throw new IOException("Bogus chunk size"); diff --git a/jdk/src/java.base/share/classes/sun/net/www/http/HttpClient.java b/jdk/src/java.base/share/classes/sun/net/www/http/HttpClient.java index e899ac9b607..0e07d3ab65c 100644 --- a/jdk/src/java.base/share/classes/sun/net/www/http/HttpClient.java +++ b/jdk/src/java.base/share/classes/sun/net/www/http/HttpClient.java @@ -808,7 +808,7 @@ public class HttpClient extends NetworkClient { ind = resp.indexOf(' '); while(resp.charAt(ind) == ' ') ind++; - code = Integer.parseInt(resp.substring(ind, ind + 3)); + code = Integer.parseInt(resp, ind, ind + 3, 10); } catch (Exception e) {} if (code == HTTP_CONTINUE && ignoreContinue) { diff --git a/jdk/src/java.base/unix/classes/sun/net/sdp/SdpProvider.java b/jdk/src/java.base/unix/classes/sun/net/sdp/SdpProvider.java index 74bcfeae34e..ec974744419 100644 --- a/jdk/src/java.base/unix/classes/sun/net/sdp/SdpProvider.java +++ b/jdk/src/java.base/unix/classes/sun/net/sdp/SdpProvider.java @@ -257,7 +257,8 @@ public class SdpProvider extends NetHooks.Provider { .getByName(s[1].substring(0, pos)); int prefix = -1; try { - prefix = Integer.parseInt(s[1].substring(pos+1)); + prefix = Integer.parseInt(s[1], pos + 1, + s[1].length(), 10); if (address instanceof Inet4Address) { // must be 1-31 if (prefix < 0 || prefix > 32) prefix = -1;