commit
b058e7d643
@ -0,0 +1,110 @@
|
||||
From 4efbd87e31e7488dfcdd1d07ff979f1f59b8b1f1 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
|
||||
Date: Tue, 6 Mar 2012 15:49:20 +0000
|
||||
Subject: [PATCH] Resolves: rhbz#800272 complain about unknown command-line
|
||||
options
|
||||
|
||||
---
|
||||
desktop/source/app/cmdlineargs.cxx | 17 ++++++++++++++++-
|
||||
desktop/source/app/cmdlineargs.hxx | 2 ++
|
||||
desktop/source/app/officeipcthread.cxx | 6 ++++++
|
||||
desktop/source/app/sofficemain.cxx | 4 ++++
|
||||
4 files changed, 28 insertions(+), 1 deletions(-)
|
||||
|
||||
diff --git a/desktop/source/app/cmdlineargs.cxx b/desktop/source/app/cmdlineargs.cxx
|
||||
index 6a5d58a..5ae86ab 100644
|
||||
--- a/desktop/source/app/cmdlineargs.cxx
|
||||
+++ b/desktop/source/app/cmdlineargs.cxx
|
||||
@@ -304,6 +304,15 @@ void CommandLineArgs::ParseCommandLine_Impl( Supplier& supplier )
|
||||
{
|
||||
bConversionOutEvent = true;
|
||||
}
|
||||
+#if defined UNX
|
||||
+ else
|
||||
+ {
|
||||
+ printf("Unknown option %s\n",
|
||||
+ rtl::OUStringToOString(aArg, osl_getThreadTextEncoding()).getStr());
|
||||
+ printf("Run 'soffice --help' to see a full list of available command line options.\n");
|
||||
+ SetBoolParam_Impl( CMD_BOOLPARAM_UNKNOWN, sal_True );
|
||||
+ }
|
||||
+#endif
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -640,7 +649,7 @@ sal_Bool CommandLineArgs::InterpretCommandLineParameter( const ::rtl::OUString&
|
||||
|
||||
if (bDeprecated)
|
||||
{
|
||||
- rtl::OString sArg(rtl::OUStringToOString(aArg, RTL_TEXTENCODING_UTF8));
|
||||
+ rtl::OString sArg(rtl::OUStringToOString(aArg, osl_getThreadTextEncoding()));
|
||||
fprintf(stderr, "Warning: %s is deprecated. Use -%s instead.\n", sArg.getStr(), sArg.getStr());
|
||||
}
|
||||
return sal_True;
|
||||
@@ -851,6 +860,12 @@ sal_Bool CommandLineArgs::IsVersion() const
|
||||
return m_aBoolParams[ CMD_BOOLPARAM_VERSION ];
|
||||
}
|
||||
|
||||
+sal_Bool CommandLineArgs::HasUnknown() const
|
||||
+{
|
||||
+ osl::MutexGuard aMutexGuard( m_aMutex );
|
||||
+ return m_aBoolParams[ CMD_BOOLPARAM_UNKNOWN ];
|
||||
+}
|
||||
+
|
||||
sal_Bool CommandLineArgs::HasModuleParam() const
|
||||
{
|
||||
osl::MutexGuard aMutexGuard( m_aMutex );
|
||||
diff --git a/desktop/source/app/cmdlineargs.hxx b/desktop/source/app/cmdlineargs.hxx
|
||||
index f79efea..29b2f46 100644
|
||||
--- a/desktop/source/app/cmdlineargs.hxx
|
||||
+++ b/desktop/source/app/cmdlineargs.hxx
|
||||
@@ -71,6 +71,7 @@ class CommandLineArgs
|
||||
CMD_BOOLPARAM_HELPBASE,
|
||||
CMD_BOOLPARAM_PSN,
|
||||
CMD_BOOLPARAM_VERSION,
|
||||
+ CMD_BOOLPARAM_UNKNOWN,
|
||||
CMD_BOOLPARAM_COUNT // must be last element!
|
||||
};
|
||||
|
||||
@@ -162,6 +163,7 @@ class CommandLineArgs
|
||||
sal_Bool IsWeb() const;
|
||||
sal_Bool IsVersion() const;
|
||||
sal_Bool HasModuleParam() const;
|
||||
+ sal_Bool HasUnknown() const;
|
||||
sal_Bool WantsToLoadDocument() const;
|
||||
|
||||
// Access to string parameters
|
||||
diff --git a/desktop/source/app/officeipcthread.cxx b/desktop/source/app/officeipcthread.cxx
|
||||
index b2c6566..4306a67 100644
|
||||
--- a/desktop/source/app/officeipcthread.cxx
|
||||
+++ b/desktop/source/app/officeipcthread.cxx
|
||||
@@ -709,6 +709,12 @@ void OfficeIPCThread::execute()
|
||||
#endif
|
||||
continue;
|
||||
}
|
||||
+
|
||||
+#ifdef UNX
|
||||
+ if (aCmdLineArgs->HasUnknown() || aCmdLineArgs->IsVersion() || aCmdLineArgs->IsHelp())
|
||||
+ continue;
|
||||
+#endif
|
||||
+
|
||||
const CommandLineArgs &rCurrentCmdLineArgs = Desktop::GetCommandLineArgs();
|
||||
|
||||
if ( aCmdLineArgs->IsQuickstart() )
|
||||
diff --git a/desktop/source/app/sofficemain.cxx b/desktop/source/app/sofficemain.cxx
|
||||
index 76562a3..ed22834 100644
|
||||
--- a/desktop/source/app/sofficemain.cxx
|
||||
+++ b/desktop/source/app/sofficemain.cxx
|
||||
@@ -71,6 +71,10 @@ extern "C" int DESKTOP_DLLPUBLIC soffice_main()
|
||||
desktop::displayVersion();
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
+ else if ( rCmdLineArgs.HasUnknown() )
|
||||
+ {
|
||||
+ return EXIT_FAILURE;
|
||||
+ }
|
||||
#endif
|
||||
return SVMain();
|
||||
#ifdef ANDROID
|
||||
--
|
||||
1.7.7.6
|
||||
|
Loading…
Reference in new issue