desktop/source/app/cmdlineargs.cxx | 3 +++ vcl/unx/generic/app/sm.cxx | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-)
New commits: commit 0f12c5de67869593cfbc36760957467a122bf81a Author: Stephan Bergmann <[email protected]> Date: Thu Jun 21 13:20:22 2012 +0200 Fix X Session Management support ...passing -session= into soffice was no longer supported. The way I tested this with Gnome 3.4 (Fedora 17) is with: * Run gnome-session-properties to select "Options - Automatically remember running applications when logging out" * Create ~/.local/share/applications/lodev.desktop: [Desktop Entry] Exec=.../core/solver/unxlngx6/installation/opt/program/soffice Icon=libreoffice-startcenter Name=LOdev Type=Application * Run "startx /usr/bin/gnome-session -- /usr/bin/Xephyr :1" Change-Id: Id8a6e431e4c355caafa6c7111a435ebc0d35f78a diff --git a/desktop/source/app/cmdlineargs.cxx b/desktop/source/app/cmdlineargs.cxx index cbfc4ed..af7ee26 100644 --- a/desktop/source/app/cmdlineargs.cxx +++ b/desktop/source/app/cmdlineargs.cxx @@ -293,6 +293,9 @@ void CommandLineArgs::ParseCommandLine_Impl( Supplier& supplier ) if (!oArg.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("backtrace")) && !oArg.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("strace")) && !oArg.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("valgrind")) && + // for X Session Management, handled in + // vcl/unx/generic/app/sm.cxx: + !oArg.match("session=") && //ignore additional legacy options that don't do anything anymore !oArg.equalsIgnoreAsciiCaseAsciiL(RTL_CONSTASCII_STRINGPARAM("nocrashreport"))) { diff --git a/vcl/unx/generic/app/sm.cxx b/vcl/unx/generic/app/sm.cxx index a897805..e0bbdb9 100644 --- a/vcl/unx/generic/app/sm.cxx +++ b/vcl/unx/generic/app/sm.cxx @@ -197,11 +197,11 @@ static void BuildSmPropertyList() pSmProps[ 2 ].vals[0].length = aExec.getLength()+1; pSmProps[ 2 ].vals[0].value = strdup( aExec.getStr() ); rtl::OStringBuffer aRestartOption; - aRestartOption.append(RTL_CONSTASCII_STRINGPARAM("-session=")); + aRestartOption.append(RTL_CONSTASCII_STRINGPARAM("--session=")); aRestartOption.append(SessionManagerClient::getSessionID()); pSmProps[ 2 ].vals[1].length = aRestartOption.getLength()+1; pSmProps[ 2 ].vals[1].value = strdup(aRestartOption.getStr()); - rtl::OString aRestartOptionNoLogo(RTL_CONSTASCII_STRINGPARAM("-nologo")); + rtl::OString aRestartOptionNoLogo(RTL_CONSTASCII_STRINGPARAM("--nologo")); pSmProps[ 2 ].vals[2].length = aRestartOptionNoLogo.getLength()+1; pSmProps[ 2 ].vals[2].value = strdup(aRestartOptionNoLogo.getStr()); @@ -544,10 +544,10 @@ const rtl::OString& SessionManagerClient::getPreviousSessionID() { ::rtl::OUString aArg; osl_getCommandArg( i, &aArg.pData ); - if(aArg.matchAsciiL(RTL_CONSTASCII_STRINGPARAM("-session="))) + if(aArg.matchAsciiL(RTL_CONSTASCII_STRINGPARAM("--session="))) { aPrevId = rtl::OUStringToOString( - aArg.copy(RTL_CONSTASCII_LENGTH("-session=")), + aArg.copy(RTL_CONSTASCII_LENGTH("--session=")), osl_getThreadTextEncoding()); break; } _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
