include/osl/process.h | 5 +++++ sal/osl/unx/process_impl.cxx | 5 +++++ sal/osl/w32/process.cxx | 6 ++++++ sal/util/sal.map | 1 + 4 files changed, 17 insertions(+)
New commits: commit 7fd7b7af26952676d8fcff6b56a081aac681d804 Author: Andrzej Hunt <andrzej.h...@collabora.com> Date: Thu Jul 10 12:17:05 2014 +0200 Introduce osl_areCommandArgsSet. We cannot call osl_setCommandArgs twice, however there is currently no way to determine whether or not this has already been done. This is necessary e.g. for LibreOfficeKit where we may also be using UNO separately (and also for unit tests where LO is already set-up prior to the unit test running, and therefore we can't set up osl again from within LOK). Change-Id: Id1f357ef604eb2b6b7814c9a04ac6933a39fd3eb diff --git a/include/osl/process.h b/include/osl/process.h index 7d0960e..7fb619f 100644 --- a/include/osl/process.h +++ b/include/osl/process.h @@ -366,6 +366,11 @@ SAL_DLLPUBLIC sal_uInt32 SAL_CALL osl_getCommandArgCount(void); SAL_DLLPUBLIC oslProcessError SAL_CALL osl_getCommandArg( sal_uInt32 nArg, rtl_uString **strCommandArg); +/** Determine whether or not the command args have already been set. + @return The command args are already set, and may not be set again. +*/ +SAL_DLLPUBLIC int SAL_CALL osl_areCommandArgsSet (void); + /** Set the command-line arguments as passed to the main-function of this process. Deprecated: This function is only for internal use. Passing the args from main will diff --git a/sal/osl/unx/process_impl.cxx b/sal/osl/unx/process_impl.cxx index d28f46d..b63f222 100644 --- a/sal/osl/unx/process_impl.cxx +++ b/sal/osl/unx/process_impl.cxx @@ -191,6 +191,11 @@ oslProcessError SAL_CALL osl_getCommandArg (sal_uInt32 nArg, rtl_uString ** strC return (result); } +int SAL_CALL osl_areCommandArgsSet (void) +{ + return (g_command_args.m_nCount > 0); +} + /*************************************** osl_setCommandArgs(). **************************************/ diff --git a/sal/osl/w32/process.cxx b/sal/osl/w32/process.cxx index 3dd0e77..25f4e58 100644 --- a/sal/osl/w32/process.cxx +++ b/sal/osl/w32/process.cxx @@ -374,6 +374,12 @@ oslProcessError SAL_CALL osl_getCommandArg( sal_uInt32 nArg, rtl_uString **strCo /***************************************************************************/ +int SAL_CALL osl_areCommandArgsSet(void) +{ + return (g_command_args.m_nCount > 0); +} + + void SAL_CALL osl_setCommandArgs (int argc, char ** argv) { osl_acquireMutex (*osl_getGlobalMutex()); diff --git a/sal/util/sal.map b/sal/util/sal.map index 1d7d491..6acd9c4 100644 --- a/sal/util/sal.map +++ b/sal/util/sal.map @@ -675,6 +675,7 @@ LIBO_UDK_4.3 { # symbols available in >= LibO 4.3 osl_createDirectoryWithFlags; rtl_allocateAlignedMemory; rtl_freeAlignedMemory; + osl_areCommandArgsSet; } LIBO_UDK_4.2; PRIVATE_1.0 { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits