From: Nick Burch Date: Wed, 29 Apr 2015 19:28:26 +0000 (+0000) Subject: When removing a SXSSF sheet, ensure temp files associated with it are disposed of... X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=b3bd87d3c2efd2d5e99dc18ba13de229a0f33d6f;p=poi.git 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 --- 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(); } /**