From b3bd87d3c2efd2d5e99dc18ba13de229a0f33d6f Mon Sep 17 00:00:00 2001 From: Nick Burch Date: Wed, 29 Apr 2015 19:28:26 +0000 Subject: [PATCH] When removing a SXSSF sheet, ensure temp files associated with it are disposed of #57666 git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1676833 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/poi/xssf/streaming/SXSSFWorkbook.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java b/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java index 79d2cc83b7..e3a0363ded 100644 --- a/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java +++ b/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java @@ -709,9 +709,16 @@ public class SXSSFWorkbook implements Workbook @Override public void removeSheetAt(int index) { - XSSFSheet xSheet=_wb.getSheetAt(index); + // Get the sheet to be removed + XSSFSheet xSheet = _wb.getSheetAt(index); + SXSSFSheet sxSheet = getSXSSFSheet(xSheet); + + // De-register it _wb.removeSheetAt(index); deregisterSheetMapping(xSheet); + + // Clean up temporary resources + sxSheet.dispose(); } /** -- 2.39.5