[Libreoffice-commits] core.git: wizards/source
Jean-Pierre Ledure (via logerrit)
logerrit at kemper.freedesktop.org
Fri May 21 16:14:17 UTC 2021
wizards/source/scriptforge/python/scriptforge.py | 3 +++
1 file changed, 3 insertions(+)
New commits:
commit 4cb73b7a5792b6c8fabacc1e29d67e9f254144e8
Author: Jean-Pierre Ledure <jp at ledure.be>
AuthorDate: Fri May 21 15:54:10 2021 +0200
Commit: Jean-Pierre Ledure <jp at ledure.be>
CommitDate: Fri May 21 18:13:32 2021 +0200
ScriptForge - (scriptforge.py) FIX stdout redirection in PythonShell()
Previous behavior:
After a PythonShell() statement that opened the APSO shell console,
subsequent print() statements executed in the same macro
run were not displayed in the console.
They were only from a next macro run.
Solution:
Force a brief suspension of the Python process by inserting
a call to a Basic routine (IPC) immediately after the launch
of the shell console.
Result: The redirection of STDOUT and STDERR happens normally inside
the APSO code, as expected.
Change-Id: Ifbf267a898d45a97c346f0f3ea824edd4e6045ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115930
Tested-by: Jean-Pierre Ledure <jp at ledure.be>
Tested-by: Jenkins
Reviewed-by: Jean-Pierre Ledure <jp at ledure.be>
diff --git a/wizards/source/scriptforge/python/scriptforge.py b/wizards/source/scriptforge/python/scriptforge.py
index 359db7a42ec1..bb8635936ed5 100644
--- a/wizards/source/scriptforge/python/scriptforge.py
+++ b/wizards/source/scriptforge/python/scriptforge.py
@@ -942,6 +942,9 @@ class SFScriptForge:
kwargs = {'loc': variables}
kwargs['loc'].setdefault('XSCRIPTCONTEXT', uno)
console(**kwargs)
+ # An interprocess call is necessary to allow a redirection of STDOUT and STDERR by APSO
+ # Choice is a minimalist call to a Basic routine: no arguments, a few lines of code
+ SFScriptForge.SF_Basic.GetGuiType()
else:
# The APSO extension could not be located in your LibreOffice installation
cls._RaiseFatal('SF_Exception.PythonShell', 'variables=None', 'PYTHONSHELLERROR')
More information about the Libreoffice-commits
mailing list