Add a null check to NetUtil. sysctlGetInt(...) (#10027)

Motivation:

BufferedReader.readLine() may return null and cause a NPE.

Modification:

Simply add a null check.

Result:

If BufferedReader.readLine() returns null, the sysctlGetInt will just return null rather than cause NPE.
This commit is contained in:
feijermu 2020-02-14 16:08:27 +08:00 committed by Norman Maurer
parent 0cd4109f64
commit 9cbfcf39da

View File

@ -316,7 +316,7 @@ public final class NetUtil {
InputStreamReader isr = new InputStreamReader(is); InputStreamReader isr = new InputStreamReader(is);
try (BufferedReader br = new BufferedReader(isr)) { try (BufferedReader br = new BufferedReader(isr)) {
String line = br.readLine(); String line = br.readLine();
if (line.startsWith(sysctlKey)) { if (line != null && line.startsWith(sysctlKey)) {
for (int i = line.length() - 1; i > sysctlKey.length(); --i) { for (int i = line.length() - 1; i > sysctlKey.length(); --i) {
if (!Character.isDigit(line.charAt(i))) { if (!Character.isDigit(line.charAt(i))) {
return Integer.valueOf(line.substring(i + 1)); return Integer.valueOf(line.substring(i + 1));