From 9c60996fc2a536803d016d6f60f879f8a1e49a54 Mon Sep 17 00:00:00 2001 From: Jean-Pierre Ledure Date: Tue, 11 Apr 2023 17:21:48 +0200 Subject: ScriptForge - (SF_FileSystem) tdf#154462 2nd call of PickFile() fails Error happens in gen and gtk3 modes. Does not happen in kf5 mode. Linux only. Windows OK. Change-Id: Ia5dd21f6879c1a732d291d15d6fb9f4bf20c76e5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150238 Tested-by: Jean-Pierre Ledure Reviewed-by: Jean-Pierre Ledure Tested-by: Jenkins --- wizards/source/scriptforge/SF_FileSystem.xba | 4 ++++ wizards/source/scriptforge/SF_Utils.xba | 4 +--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/wizards/source/scriptforge/SF_FileSystem.xba b/wizards/source/scriptforge/SF_FileSystem.xba index 21464c708fe5..b09f980429f4 100644 --- a/wizards/source/scriptforge/SF_FileSystem.xba +++ b/wizards/source/scriptforge/SF_FileSystem.xba @@ -1588,6 +1588,10 @@ Try: ' Get selected file iAccept = .Execute() If iAccept = com.sun.star.ui.dialogs.ExecutableDialogResults.OK Then sFile = .getSelectedFiles()(0) + + ' Do not reuse a FilePicker, side effects observed (a.o. TDF#154462) + .dispose() + End With Finally: diff --git a/wizards/source/scriptforge/SF_Utils.xba b/wizards/source/scriptforge/SF_Utils.xba index c19f815587ce..11753704c461 100644 --- a/wizards/source/scriptforge/SF_Utils.xba +++ b/wizards/source/scriptforge/SF_Utils.xba @@ -370,9 +370,7 @@ Dim oDefaultContext As Object End If Set _GetUNOService = .FileAccess Case "FilePicker" - If IsEmpty(.FilePicker) Or IsNull(.FilePicker) Then - Set .FilePicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker") - End If + Set .FilePicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker") ' Do not reuse an existing FilePicker: TDF#154462 Set _GetUNOService = .FilePicker Case "FilterFactory" If IsEmpty(.FilterFactory) Or IsNull(.FilterFactory) Then -- cgit