diff options
-rw-r--r-- | nx-X11/programs/Xserver/hw/nxagent/Args.c | 17 |
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); + } } } |