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 <jp@ledure.be>
Reviewed-by: Jean-Pierre Ledure <jp@ledure.be>
Tested-by: Jenkins
diff --git a/wizards/source/scriptforge/SF_FileSystem.xba b/wizards/source/scriptforge/SF_FileSystem.xba
index 21464c7..b09f980 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 c19f815..1175370 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