summaryrefslogtreecommitdiff
path: root/desktop/unx/source/args.c
diff options
context:
space:
mode:
Diffstat (limited to 'desktop/unx/source/args.c')
-rw-r--r--desktop/unx/source/args.c39
1 files changed, 22 insertions, 17 deletions
diff --git a/desktop/unx/source/args.c b/desktop/unx/source/args.c
index 0e01123cb242..e08d119397de 100644
--- a/desktop/unx/source/args.c
+++ b/desktop/unx/source/args.c
@@ -48,30 +48,34 @@ static struct {
unsigned int bInhibitSplash : 1;
unsigned int bInhibitPagein : 1;
unsigned int bInhibitJavaLdx : 1;
+ unsigned int bInhibitPipe : 1;
const char *pPageinType;
} pArgDescr[] = {
/* have a trailing argument */
- { "pt", 1, 0, 0, 0, NULL },
- { "display", 1, 0, 0, 0, NULL },
+ { "pt", 1, 0, 0, 0, 0, NULL },
+ { "display", 1, 0, 0, 0, 0, NULL },
/* no splash */
- { "nologo", 0, 1, 0, 0, NULL },
- { "headless", 0, 1, 0, 0, NULL },
- { "invisible", 0, 1, 0, 0, NULL },
- { "quickstart", 0, 1, 0, 0, NULL },
- { "minimized", 0, 1, 0, 0, NULL },
+ { "nologo", 0, 1, 0, 0, 0, NULL },
+ { "headless", 0, 1, 0, 0, 0, NULL },
+ { "invisible", 0, 1, 0, 0, 0, NULL },
+ { "quickstart", 0, 1, 0, 0, 0, NULL },
+ { "minimized", 0, 1, 0, 0, 0, NULL },
/* pagein bits */
- { "writer", 0, 0, 0, 0, "pagein-writer" },
- { "calc", 0, 0, 0, 0, "pagein-calc" },
- { "draw", 0, 0, 0, 0, "pagein-draw" },
- { "impress", 0, 0, 0, 0, "pagein-impress" },
-
- /* nothing much */
- { "version", 0, 1, 1, 1, NULL },
- { "help", 0, 1, 1, 1, NULL },
- { "h", 0, 1, 1, 1, NULL },
- { "?", 0, 1, 1, 1, NULL },
+ { "writer", 0, 0, 0, 0, 0, "pagein-writer" },
+ { "calc", 0, 0, 0, 0, 0, "pagein-calc" },
+ { "draw", 0, 0, 0, 0, 0, "pagein-draw" },
+ { "impress", 0, 0, 0, 0, 0, "pagein-impress" },
+
+ /* Do not send --help/--version over the pipe, as their output shall go to
+ the calling process's stdout (ideally, this would also happen in the
+ presence of unknown options); also prevent splash/pagein/javaldx overhead
+ (as these options will be processed early in soffice_main): */
+ { "version", 0, 1, 1, 1, 1, NULL },
+ { "help", 0, 1, 1, 1, 1, NULL },
+ { "h", 0, 1, 1, 1, 1, NULL },
+ { "?", 0, 1, 1, 1, 1, NULL },
};
Args *args_parse (void)
@@ -133,6 +137,7 @@ Args *args_parse (void)
args->bInhibitSplash |= pArgDescr[j].bInhibitSplash;
args->bInhibitPagein |= pArgDescr[j].bInhibitPagein;
args->bInhibitJavaLdx |= pArgDescr[j].bInhibitJavaLdx;
+ args->bInhibitPipe |= pArgDescr[j].bInhibitPipe;
if (pArgDescr[j].pPageinType)
args->pPageinType = pArgDescr[j].pPageinType;
break;