From e2aa929908e5c5d952151adddae02da823096539 Mon Sep 17 00:00:00 2001 From: Owen Stephens Date: Tue, 9 Apr 2019 15:02:10 +0100 Subject: [PATCH] Ensure workbooks are closed after reading/writing --- main/src/com/google/refine/exporters/XlsExporter.java | 2 +- main/src/com/google/refine/importers/ExcelImporter.java | 4 ++-- .../com/google/refine/tests/importers/ExcelImporterTests.java | 1 + 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/main/src/com/google/refine/exporters/XlsExporter.java b/main/src/com/google/refine/exporters/XlsExporter.java index b1749d9d1..48100b0ae 100644 --- a/main/src/com/google/refine/exporters/XlsExporter.java +++ b/main/src/com/google/refine/exporters/XlsExporter.java @@ -141,8 +141,8 @@ public class XlsExporter implements StreamExporter { project, engine, params, serializer); wb.write(outputStream); - wb.close(); outputStream.flush(); + wb.close(); } } diff --git a/main/src/com/google/refine/importers/ExcelImporter.java b/main/src/com/google/refine/importers/ExcelImporter.java index b513ff0eb..421ccc66a 100644 --- a/main/src/com/google/refine/importers/ExcelImporter.java +++ b/main/src/com/google/refine/importers/ExcelImporter.java @@ -117,6 +117,7 @@ public class ExcelImporter extends TabularImportingParserBase { } JSONUtilities.append(sheetRecords, sheetRecord); } + wb.close(); } finally { is.close(); } @@ -146,7 +147,6 @@ public class ExcelImporter extends TabularImportingParserBase { Workbook wb = null; if (!inputStream.markSupported()) { inputStream = new BufferedInputStream(inputStream); -; } try { @@ -238,7 +238,7 @@ public class ExcelImporter extends TabularImportingParserBase { exceptions ); } - + super.parseOneFile(project, metadata, job, fileSource, inputStream, limit, options, exceptions); } diff --git a/main/tests/server/src/com/google/refine/tests/importers/ExcelImporterTests.java b/main/tests/server/src/com/google/refine/tests/importers/ExcelImporterTests.java index 7a93fd62c..bb5f5a81b 100644 --- a/main/tests/server/src/com/google/refine/tests/importers/ExcelImporterTests.java +++ b/main/tests/server/src/com/google/refine/tests/importers/ExcelImporterTests.java @@ -222,6 +222,7 @@ public class ExcelImporterTests extends ImporterTest { wb.write(outputStream); outputStream.flush(); outputStream.close(); + wb.close(); } catch (IOException e) { return null; }