[Libreoffice-commits] core.git: Branch 'distro/collabora/cp-6.4' - 3 commits - configure.ac shell/source

Andras Timar (via logerrit) logerrit at kemper.freedesktop.org
Thu Mar 18 15:54:23 UTC 2021


 configure.ac                         |    2 +-
 shell/source/unix/exec/shellexec.cxx |    4 ++++
 shell/source/win32/SysShExec.cxx     |   30 +++++++++++++++++++-----------
 3 files changed, 24 insertions(+), 12 deletions(-)

New commits:
commit 01d6d4419e08c16d5488970d3f3ad9f059ee2625
Author:     Andras Timar <andras.timar at collabora.com>
AuthorDate: Thu Mar 18 16:53:40 2021 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Mar 18 16:53:40 2021 +0100

    Bump version to 6.4-30
    
    Change-Id: I5df0d75277082634ee0ce7fd1f6d46f19a659d60

diff --git a/configure.ac b/configure.ac
index 68025ea51605..b3b8162b9eb3 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],[6.4.10.29],[],[],[https://collaboraoffice.com/])
+AC_INIT([Collabora Office],[6.4.10.30],[],[],[https://collaboraoffice.com/])
 
 dnl libnumbertext needs autoconf 2.68, but that can pick up autoconf268 just fine if it is installed
 dnl whereas aclocal (as run by autogen.sh) insists on using autoconf and fails hard
commit 18ffd81ed4d9eca82d71b07e8f4b1ef54d308fc3
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Tue Feb 16 09:30:09 2021 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Mar 18 16:52:49 2021 +0100

    Improve checkExtension
    
    Change-Id: Iff416a9c5930ad5903f7ee51a2abbc94d5f40800
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110970
    Reviewed-by: Mike Kaganski <mike.kaganski at collabora.com>
    Tested-by: Jenkins
    (cherry picked from commit f456c4dacf700e064e112ef068ff7edb04239754)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110922
    Reviewed-by: Michael Stahl <michael.stahl at allotropia.de>

diff --git a/shell/source/win32/SysShExec.cxx b/shell/source/win32/SysShExec.cxx
index c4170d2f9de5..97a8df6e94b6 100644
--- a/shell/source/win32/SysShExec.cxx
+++ b/shell/source/win32/SysShExec.cxx
@@ -410,21 +410,28 @@ void SAL_CALL CSysShExec::execute( const OUString& aCommand, const OUString& aPa
                 }
             }
             pathname = o3tl::toU(path);
+            // ShellExecuteExW appears to ignore trailing dots, so remove them:
+            while (pathname.endsWith(".", &pathname)) {}
             auto const n = pathname.lastIndexOf('.');
             if (n > pathname.lastIndexOf('\\')) {
                 auto const ext = pathname.copy(n + 1);
-                OUString env;
-                if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData) != osl_Process_E_None)
-                {
-                    SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed");
-                }
-                if (!(checkExtension(ext, env)
-                      && checkExtension(
-                          ext,
-                          ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;.JAR")))
-                {
-                    throw css::lang::IllegalArgumentException(
-                        "XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, 0);
+                if (!ext.isEmpty()) {
+                    OUString env;
+                    if (osl_getEnvironment(OUString("PATHEXT").pData, &env.pData)
+                        != osl_Process_E_None)
+                    {
+                        SAL_INFO("shell", "osl_getEnvironment(PATHEXT) failed");
+                    }
+                    if (!(checkExtension(ext, env)
+                          && checkExtension(
+                              ext,
+                              ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;"
+                                  ".JAR;.APPLICATION;.LNK;.SCR")))
+                    {
+                        throw css::lang::IllegalArgumentException(
+                            "XSystemShellExecute.execute, cannot process <" + aCommand + ">", {},
+                            0);
+                    }
                 }
             }
         }
commit c00efc8339f0ff355dae6266532aefe6b5b685a2
Author:     Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Wed Nov 25 09:13:12 2020 +0100
Commit:     Andras Timar <andras.timar at collabora.com>
CommitDate: Thu Mar 18 16:52:37 2021 +0100

    Better handling of Java files
    
    Change-Id: Ifa662be39ac7d35241ee31956e2556b7ba3b5a02
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106558
    Tested-by: Jenkins
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
    (cherry picked from commit 696739056f37430154d6333b8f7228d1c44d09b3)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106520
    Reviewed-by: Michael Stahl <michael.stahl at cib.de>
    (cherry picked from commit ec5adc39cbea6d754ef68ab3d03fb16066b27e40)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107060
    Tested-by: Michael Stahl <michael.stahl at cib.de>

diff --git a/shell/source/unix/exec/shellexec.cxx b/shell/source/unix/exec/shellexec.cxx
index 3daea4a2b18a..ad171d70888f 100644
--- a/shell/source/unix/exec/shellexec.cxx
+++ b/shell/source/unix/exec/shellexec.cxx
@@ -150,6 +150,10 @@ void SAL_CALL ShellExec::execute( const OUString& aCommand, const OUString& aPar
             {
                 throw css::lang::IllegalArgumentException(
                     "XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, 0);
+            } else if (pathname.endsWithIgnoreAsciiCase(".class")
+                       || pathname.endsWithIgnoreAsciiCase(".jar"))
+            {
+                dir = true;
             }
         }
 
diff --git a/shell/source/win32/SysShExec.cxx b/shell/source/win32/SysShExec.cxx
index ddc222fe71cf..c4170d2f9de5 100644
--- a/shell/source/win32/SysShExec.cxx
+++ b/shell/source/win32/SysShExec.cxx
@@ -420,7 +420,8 @@ void SAL_CALL CSysShExec::execute( const OUString& aCommand, const OUString& aPa
                 }
                 if (!(checkExtension(ext, env)
                       && checkExtension(
-                          ext, ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY")))
+                          ext,
+                          ".COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.CLASS;.JAR")))
                 {
                     throw css::lang::IllegalArgumentException(
                         "XSystemShellExecute.execute, cannot process <" + aCommand + ">", {}, 0);


More information about the Libreoffice-commits mailing list