aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Args.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c
index d5cbfbce3..e4fa350bc 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Args.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c
@@ -285,7 +285,22 @@ int ddxProcessArgument(int argc, char *argv[], int i)
if (nxagentOptionsFilename)
{
- nxagentProcessOptionsFile();
+ /* if the "filename" starts with an nx marker treat it
+ as an option _string_ instead of a filename */
+ if (strncasecmp(nxagentOptionsFilename, "nx/nx,", 6) == 0 ||
+ strncasecmp(nxagentOptionsFilename, "nx/nx:", 6) == 0)
+ {
+ nxagentParseOptionString(nxagentOptionsFilename + 6);
+ }
+ else if (strncasecmp(nxagentOptionsFilename, "nx,", 3) == 0 ||
+ strncasecmp(nxagentOptionsFilename, "nx:", 3) == 0)
+ {
+ nxagentParseOptionString(nxagentOptionsFilename + 3);
+ }
+ else
+ {
+ nxagentProcessOptionsFile(nxagentOptionsFilename);
+ }
}
}