summaryrefslogtreecommitdiff
path: root/pyuno
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-06-19 11:32:00 +0100
committerAdolfo Jayme Barrientos <fitojb@ubuntu.com>2020-06-20 13:13:33 +0200
commit448ba86f200942a580bdeaa9e8dff10cd32d86ed (patch)
tree5fe3c4cc7c5d60f1855cff4a146ed39f78b27689 /pyuno
parent66613a37ea258727838608d1b503f8d5ee9f6007 (diff)
tdf#121384 don't leave a bare trailing : in PYTHONPATH
and don't insert any empty path entries if that situation was to arise Change-Id: I8d8183485f457c3e4385181fee07390c4bfef603 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/96706 Tested-by: Tomáš Chvátal <tchvatal@suse.com> Tested-by: Jenkins Reviewed-by: Tomáš Chvátal <tchvatal@suse.com> Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Diffstat (limited to 'pyuno')
-rw-r--r--pyuno/source/loader/pyuno_loader.cxx14
1 files changed, 12 insertions, 2 deletions
diff --git a/pyuno/source/loader/pyuno_loader.cxx b/pyuno/source/loader/pyuno_loader.cxx
index 8556dfdde11f..07dc748235f9 100644
--- a/pyuno/source/loader/pyuno_loader.cxx
+++ b/pyuno/source/loader/pyuno_loader.cxx
@@ -140,6 +140,7 @@ static void setPythonHome ( const OUString & pythonHome )
static void prependPythonPath( const OUString & pythonPathBootstrap )
{
OUStringBuffer bufPYTHONPATH( 256 );
+ bool bAppendSep = false;
sal_Int32 nIndex = 0;
while( true )
{
@@ -155,15 +156,24 @@ static void prependPythonPath( const OUString & pythonPathBootstrap )
}
OUString systemPath;
osl_getSystemPathFromFileURL( fileUrl.pData, &(systemPath.pData) );
- bufPYTHONPATH.append( systemPath );
- bufPYTHONPATH.append( static_cast<sal_Unicode>(SAL_PATHSEPARATOR) );
+ if (!systemPath.isEmpty())
+ {
+ if (bAppendSep)
+ bufPYTHONPATH.append(static_cast<sal_Unicode>(SAL_PATHSEPARATOR));
+ bufPYTHONPATH.append(systemPath);
+ bAppendSep = true;
+ }
if( nNew == -1 )
break;
nIndex = nNew + 1;
}
const char * oldEnv = getenv( "PYTHONPATH");
if( oldEnv )
+ {
+ if (bAppendSep)
+ bufPYTHONPATH.append( static_cast<sal_Unicode>(SAL_PATHSEPARATOR) );
bufPYTHONPATH.append( OUString(oldEnv, strlen(oldEnv), osl_getThreadTextEncoding()) );
+ }
OUString envVar("PYTHONPATH");
OUString envValue(bufPYTHONPATH.makeStringAndClear());