[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-5.3-desktop' - 2 commits - configure.ac scripting/source
Libreoffice Gerrit user
logerrit at kemper.freedesktop.org
Sat Oct 20 21:23:46 UTC 2018
configure.ac | 2 +-
scripting/source/pyprov/pythonscript.py | 30 ++++++++++++++++++++++++++++--
2 files changed, 29 insertions(+), 3 deletions(-)
New commits:
commit 6201ab17a66ce552e0a0d647a4c04ad64d3dd56b
Author: Andras Timar <andras.timar at collabora.com>
AuthorDate: Sat Oct 20 23:23:17 2018 +0200
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Sat Oct 20 23:23:17 2018 +0200
Bump version to 5.3-58
Change-Id: I466c8a5c7ac025751179f3eca6d4223589abad4a
diff --git a/configure.ac b/configure.ac
index 0df4964221eb..7b11377cad1a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl in order to create a configure script.
# several non-alphanumeric characters, those are split off and used only for the
# ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea.
-AC_INIT([Collabora Office],[5.3.10.57],[],[],[https://collaboraoffice.com/])
+AC_INIT([Collabora Office],[5.3.10.58],[],[],[https://collaboraoffice.com/])
AC_PREREQ([2.59])
commit a9d81dd30d809b9c5ce2d3e4752039f19be70494
Author: Caolán McNamara <caolanm at redhat.com>
AuthorDate: Thu Oct 18 20:39:23 2018 +0100
Commit: Andras Timar <andras.timar at collabora.com>
CommitDate: Sat Oct 20 23:22:37 2018 +0200
keep pyuno script processing below base uri
Change-Id: Icc13fb7193fb1e7c50e0df286161a10b4ed636c7
Reviewed-on: https://gerrit.libreoffice.org/61969
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
(cherry picked from commit b1c85cdb37a47998f8ab135fbc96f186334b171c)
diff --git a/scripting/source/pyprov/pythonscript.py b/scripting/source/pyprov/pythonscript.py
index e312c6a52fbf..a2c9e70f9d54 100644
--- a/scripting/source/pyprov/pythonscript.py
+++ b/scripting/source/pyprov/pythonscript.py
@@ -25,6 +25,7 @@ import imp
import time
import ast
import platform
+from com.sun.star.uri.RelativeUriExcessParentSegments import RETAIN
try:
unicode
@@ -212,8 +213,33 @@ class MyUriHelper:
def scriptURI2StorageUri( self, scriptURI ):
try:
- myUri = self.m_uriRefFac.parse(scriptURI)
- ret = self.m_baseUri + "/" + myUri.getName().replace( "|", "/" )
+ # base path to the python script location
+ sBaseUri = self.m_baseUri + "/"
+ xBaseUri = self.m_uriRefFac.parse(sBaseUri)
+
+ # path to the .py file + "$functionname, arguments, etc
+ xStorageUri = self.m_uriRefFac.parse(scriptURI)
+ sStorageUri = xStorageUri.getName().replace( "|", "/" );
+
+ # path to the .py file, relative to the base
+ sFileUri = sStorageUri[0:sStorageUri.find("$")]
+ xFileUri = self.m_uriRefFac.parse(sFileUri)
+ if not xFileUri:
+ message = "pythonscript: invalid relative uri '" + sFileUri+ "'"
+ log.debug( message )
+ raise RuntimeException( message )
+
+ # absolute path to the .py file
+ xAbsScriptUri = self.m_uriRefFac.makeAbsolute(xBaseUri, xFileUri, True, RETAIN)
+ sAbsScriptUri = xAbsScriptUri.getUriReference()
+
+ # ensure py file is under the base path
+ if not sAbsScriptUri.startswith(sBaseUri):
+ message = "pythonscript: storage uri '" + sAbsScriptUri + "' not in base uri '" + self.m_baseUri + "'"
+ log.debug( message )
+ raise RuntimeException( message )
+
+ ret = sBaseUri + sStorageUri
log.debug( "converting scriptURI="+scriptURI + " to storageURI=" + ret )
return ret
except UnoException as e:
More information about the Libreoffice-commits
mailing list