Skip to content

Commit 5ad487e

Browse files
committed
Avoid non-closed streams.
1 parent ceabf1d commit 5ad487e

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

byte-buddy-agent/src/main/java/net/bytebuddy/agent/VirtualMachine.java

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2405,7 +2405,13 @@ public int getOwnerIdOf(File file) {
24052405
file.getAbsolutePath()});
24062406
int attempts = this.attempts;
24072407
boolean exited = false;
2408-
String line = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8")).readLine();
2408+
String line;
2409+
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
2410+
try {
2411+
line = reader.readLine();
2412+
} finally {
2413+
reader.close();
2414+
}
24092415
do {
24102416
try {
24112417
if (process.exitValue() != 0) {
@@ -2479,11 +2485,15 @@ public int getOwnerIdOf(File file) {
24792485
Process process = Runtime.getRuntime().exec(new String[]{"istat", file.getAbsolutePath()});
24802486
int attempts = this.attempts;
24812487
boolean exited = false;
2482-
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
24832488
StringBuilder output = new StringBuilder();
2484-
String line;
2485-
while ((line = bufferedReader.readLine()) != null) {
2486-
output.append(line).append("\n");
2489+
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
2490+
try {
2491+
String line;
2492+
while ((line = reader.readLine()) != null) {
2493+
output.append(line).append("\n");
2494+
}
2495+
} finally {
2496+
reader.close();
24872497
}
24882498
do {
24892499
try {
@@ -2563,7 +2573,13 @@ public int getOwnerIdOf(File file) {
25632573
file.getAbsolutePath()});
25642574
int attempts = this.attempts;
25652575
boolean exited = false;
2566-
String line = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8")).readLine();
2576+
String line;
2577+
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream(), "UTF-8"));
2578+
try {
2579+
line = reader.readLine();
2580+
} finally {
2581+
reader.close();
2582+
}
25672583
do {
25682584
try {
25692585
if (process.exitValue() != 0) {

0 commit comments

Comments
 (0)