From 69e69c932624a1fffc593d2105146e31b4644f80 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 5 Jun 2026 12:50:41 +0100 Subject: [PATCH 1/3] Ensure password reset after writing workbook --- .../sf/jasperreports/poi/export/JRXlsMetadataExporter.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java index 5ed5ded655..5c640ffd3f 100644 --- a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java +++ b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java @@ -580,8 +580,11 @@ protected void closeWorkbook(OutputStream os) throws JRException { { Biff8EncryptionKey.setCurrentUserPassword(encryptionPassword); } - workbook.write(os); - Biff8EncryptionKey.setCurrentUserPassword(null); + try { + workbook.write(os); + } finally { + Biff8EncryptionKey.setCurrentUserPassword(null); + } } catch (IOException e) { throw From 98bf62029bada324b57130ddb280b1fee8f7aad1 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 5 Jun 2026 12:53:16 +0100 Subject: [PATCH 2/3] Ensure password reset after writing workbook --- .../net/sf/jasperreports/poi/export/JRXlsExporter.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsExporter.java b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsExporter.java index 7b84a30f8c..e4e940b138 100644 --- a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsExporter.java +++ b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsExporter.java @@ -656,8 +656,11 @@ protected void closeWorkbook(OutputStream os) throws JRException { Biff8EncryptionKey.setCurrentUserPassword(encryptionPassword); } - workbook.write(os); - Biff8EncryptionKey.setCurrentUserPassword(null); + try { + workbook.write(os); + } finally { + Biff8EncryptionKey.setCurrentUserPassword(null); + } } catch (IOException e) { From a69f467378f8abec55213ef6bbb2c12b9001bbff Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Fri, 5 Jun 2026 12:54:26 +0100 Subject: [PATCH 3/3] Fix indentation in JRXlsMetadataExporter.java --- .../sf/jasperreports/poi/export/JRXlsMetadataExporter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java index 5c640ffd3f..dfd86ee1e8 100644 --- a/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java +++ b/ext/excel-poi/src/main/java/net/sf/jasperreports/poi/export/JRXlsMetadataExporter.java @@ -581,9 +581,9 @@ protected void closeWorkbook(OutputStream os) throws JRException { Biff8EncryptionKey.setCurrentUserPassword(encryptionPassword); } try { - workbook.write(os); + workbook.write(os); } finally { - Biff8EncryptionKey.setCurrentUserPassword(null); + Biff8EncryptionKey.setCurrentUserPassword(null); } } catch (IOException e) {