Merge pull request #490 from iamsanjaymalakar/master
Fix ConcatReader.close() to close all readers on failure
This commit is contained in:
@@ -383,10 +383,17 @@ public class ConcatReader extends Reader {
|
|||||||
@Override
|
@Override
|
||||||
public void close() throws IOException {
|
public void close() throws IOException {
|
||||||
if (closed) return;
|
if (closed) return;
|
||||||
|
IOException first = null;
|
||||||
for (Reader reader : readerQueue) {
|
for (Reader reader : readerQueue) {
|
||||||
reader.close();
|
try {
|
||||||
|
reader.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
if (first == null) first = e;
|
||||||
|
else first.addSuppressed(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
closed = true;
|
closed = true;
|
||||||
|
if (first != null) throw first;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -381,10 +381,17 @@ public class ConcatReader extends Reader {
|
|||||||
@Override
|
@Override
|
||||||
public void close() throws IOException {
|
public void close() throws IOException {
|
||||||
if (closed) return;
|
if (closed) return;
|
||||||
|
IOException first = null;
|
||||||
for (Reader reader : readerQueue) {
|
for (Reader reader : readerQueue) {
|
||||||
reader.close();
|
try {
|
||||||
|
reader.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
if (first == null) first = e;
|
||||||
|
else first.addSuppressed(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
closed = true;
|
closed = true;
|
||||||
|
if (first != null) throw first;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
Reference in New Issue
Block a user