Skip to content

Commit 74d291d

Browse files
committed
Fix csv writer closing the stream eagerly.
1 parent 2c7c6ef commit 74d291d

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

src/mcp/java/net/minecraftforge/gradle/mcp/MCPRepo.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@
5656
import java.io.File;
5757
import java.io.FileOutputStream;
5858
import java.io.IOException;
59+
import java.io.OutputStream;
5960
import java.io.OutputStreamWriter;
6061
import java.net.URL;
6162
import java.util.ArrayList;
@@ -556,13 +557,13 @@ private File findOfficialMapping(String version) throws IOException {
556557
ZipOutputStream out = new ZipOutputStream(fos)) {
557558

558559
out.putNextEntry(Utils.getStableEntry("fields.csv"));
559-
try (CsvWriter writer = CsvWriter.builder().lineDelimiter(LineDelimiter.LF).build(new OutputStreamWriter(out))) {
560+
try (CsvWriter writer = CsvWriter.builder().lineDelimiter(LineDelimiter.LF).build(new UncloseableOutputStreamWritter(out))) {
560561
fields.forEach(writer::writeRow);
561562
}
562563
out.closeEntry();
563564

564565
out.putNextEntry(Utils.getStableEntry("methods.csv"));
565-
try (CsvWriter writer = CsvWriter.builder().lineDelimiter(LineDelimiter.LF).build(new OutputStreamWriter(out))) {
566+
try (CsvWriter writer = CsvWriter.builder().lineDelimiter(LineDelimiter.LF).build(new UncloseableOutputStreamWritter(out))) {
566567
methods.forEach(writer::writeRow);
567568
}
568569
out.closeEntry();
@@ -576,6 +577,17 @@ private File findOfficialMapping(String version) throws IOException {
576577
return mappings;
577578
}
578579

580+
private class UncloseableOutputStreamWritter extends OutputStreamWriter {
581+
public UncloseableOutputStreamWritter(OutputStream out) {
582+
super(out);
583+
}
584+
585+
@Override
586+
public void close() throws IOException {
587+
super.flush();
588+
}
589+
}
590+
579591
private File findEmptyPom(String side, String version) throws IOException {
580592
File pom = cacheMC(side, version, null, "pom");
581593
debug(" Finding pom: " + pom);

0 commit comments

Comments
 (0)