cui/source/options/optjava.cxx |   21 ++-------------------
 jvmfwk/source/framework.cxx    |    5 +----
 2 files changed, 3 insertions(+), 23 deletions(-)

New commits:
commit be96171e0742c851b3dc57416b29956ffaebb3ef
Author:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
AuthorDate: Mon Jun 5 10:21:44 2023 +0200
Commit:     Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
CommitDate: Thu Jun 8 12:53:03 2023 +0200

    Revert "Allow bootstrap variables in Java user classpath settings"
    
    This breaks existing paths which contain "\" or "$".
    
    This reverts commit cfc2376f804f13eb562f39182cb24fe7dc61d6ef.
    
    Change-Id: Ia58df0a4f061f45140575e89231bd18d044a9bc1
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152604
    Tested-by: Jenkins
    Reviewed-by: Samuel Mehrbrodt <samuel.mehrbr...@allotropia.de>
    (cherry picked from commit 7b2575e3076e04cb540e8f2b89d5f84abad19ea1)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152667

diff --git a/cui/source/options/optjava.cxx b/cui/source/options/optjava.cxx
index 631d085c3bfb..c1528138f326 100644
--- a/cui/source/options/optjava.cxx
+++ b/cui/source/options/optjava.cxx
@@ -944,30 +944,13 @@ void SvxJavaClassPathDlg::SetClassPath( const OUString& 
_rPath )
         sal_Int32 nIdx = 0;
         do
         {
-            sal_Int32 nextColon = _rPath.indexOf(CLASSPATH_DELIMITER, nIdx);
-            OUString sToken(
-                _rPath.subView(nIdx, nextColon > 0 ? nextColon - nIdx : 
_rPath.getLength() - nIdx));
-
-            // Detect open bootstrap variables - they might contain colons - 
we need to skip those.
-            sal_Int32 nBootstrapVarStart = sToken.indexOf("${");
-            if (nBootstrapVarStart >= 0)
-            {
-                sal_Int32 nBootstrapVarEnd = sToken.indexOf("}");
-                if (nBootstrapVarEnd == -1)
-                {
-                    // Current colon is part of bootstrap variable - skip it!
-                    nextColon = _rPath.indexOf(CLASSPATH_DELIMITER, nextColon 
+ 1);
-                    sToken = _rPath.subView(nIdx, nextColon > 0 ? nextColon - 
nIdx
-                                                                : 
_rPath.getLength() - nIdx);
-                }
-            }
+            OUString sToken = _rPath.getToken( 0, CLASSPATH_DELIMITER, nIdx );
             OUString sURL;
             osl::FileBase::getFileURLFromSystemPath(sToken, sURL); // best 
effort
             INetURLObject aURL( sURL );
             m_xPathList->append("", sToken, 
SvFileInformationManager::GetImageId(aURL));
-            nIdx = nextColon + 1;
         }
-        while (nIdx > 0);
+        while (nIdx>=0);
         // select first entry
         m_xPathList->select(0);
     }
diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx
index 33b61f1622fd..5f83e7be739e 100644
--- a/jvmfwk/source/framework.cxx
+++ b/jvmfwk/source/framework.cxx
@@ -185,10 +185,7 @@ javaFrameworkError jfw_startVM(
                     return JFW_E_NEED_RESTART;
 
                 vmParams = settings.getVmParametersUtf8();
-                // Expand user classpath (might contain bootstrap vars)
-                OUString sUserPath(settings.getUserClassPath());
-                rtl::Bootstrap::expandMacros(sUserPath);
-                sUserClassPath = jfw::makeClassPathOption(sUserPath);
+                sUserClassPath = 
jfw::makeClassPathOption(settings.getUserClassPath());
             } // end mode FWK_MODE_OFFICE
             else if (mode == jfw::JFW_MODE_DIRECT)
             {

Reply via email to