From 784371488b759420fb84bc93ce21ec84cc0b0643 Mon Sep 17 00:00:00 2001 From: Markus Mohrhard Date: Wed, 21 Jun 2017 22:17:29 +0200 Subject: updater: forward the command line arguments to the updater The arguments will then be used again to restart LibreOffice with the same arguments. Change-Id: I17697c997a1dfeebecd9ec64e8f4ea66cadc4690 Reviewed-on: https://gerrit.libreoffice.org/39079 Tested-by: Jenkins Reviewed-by: Markus Mohrhard --- desktop/source/app/updater.cxx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'desktop/source/app/updater.cxx') diff --git a/desktop/source/app/updater.cxx b/desktop/source/app/updater.cxx index 1d2b7585321c..9701691c1fb4 100644 --- a/desktop/source/app/updater.cxx +++ b/desktop/source/app/updater.cxx @@ -25,6 +25,7 @@ #include #include #include +#include #include @@ -140,7 +141,8 @@ char** createCommandLine() OUString aInstallDir( "$BRAND_BASE_DIR/" ); rtl::Bootstrap::expandMacros(aInstallDir); - size_t nArgs = 8; + size_t nCommandLineArgs = rtl_getAppCommandArgCount(); + size_t nArgs = 8 + nCommandLineArgs; char** pArgs = new char*[nArgs]; { createStr(pUpdaterName, pArgs, 0); @@ -183,6 +185,15 @@ char** createCommandLine() OUString aSofficePath = getPathFromURL(aSofficePathURL); createStr(aSofficePath, pArgs, 6); } + + // add the command line arguments from the soffice list + for (size_t i = 0; i < nCommandLineArgs; ++i) + { + OUString aCommandLineArg; + rtl_getAppCommandArg(i, &aCommandLineArg.pData); + createStr(aCommandLineArg, pArgs, 7 + i); + } + pArgs[nArgs - 1] = nullptr; return pArgs; -- cgit