diff options
Diffstat (limited to 'debian/patches/0203_nxagent_disable-rootless-exit.full.patch')
-rw-r--r-- | debian/patches/0203_nxagent_disable-rootless-exit.full.patch | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/debian/patches/0203_nxagent_disable-rootless-exit.full.patch b/debian/patches/0203_nxagent_disable-rootless-exit.full.patch new file mode 100644 index 000000000..74579f4d8 --- /dev/null +++ b/debian/patches/0203_nxagent_disable-rootless-exit.full.patch @@ -0,0 +1,63 @@ +Description: Add -norootlessexit cmdline option to nxagent +Author: Oleksandr Shneyder <o.schneyder@phoca-gmbh.de> + +--- a/nx-X11/programs/Xserver/hw/nxagent/Args.c ++++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c +@@ -672,6 +672,12 @@ + return 1; + } + ++ if (!strcmp(argv[i], "-norootlessexit")) { ++ nxagentChangeOption(NoRootlessExit, True); ++ return 1; ++ } ++ ++ + if (!strcmp(argv[i], "-noonce")) + { + nxagentOnce = False; +@@ -1855,6 +1861,7 @@ + ErrorF("The NX system adds the following arguments:\n"); + ErrorF("-forcenx force use of NX protocol messages assuming communication through nxproxy\n"); + ErrorF("-timeout int auto-disconnect timeout in seconds (minimum allowed: 60)\n"); ++ ErrorF("-norootlessexit don't exit if there are no clients in rootless mode\n"); + #ifdef RENDER + ErrorF("-norender disable the use of the render extension\n"); + ErrorF("-nocomposite disable the use of the composite extension\n"); +--- a/nx-X11/programs/Xserver/hw/nxagent/Handlers.c ++++ b/nx-X11/programs/Xserver/hw/nxagent/Handlers.c +@@ -219,7 +219,7 @@ + + if (nxagentOption(Rootless) && + nxagentLastWindowDestroyed && nxagentRootlessDialogPid == 0 && +- now > nxagentLastWindowDestroyedTime + 30 * 1000) ++ now > nxagentLastWindowDestroyedTime + 30 * 1000 && !nxagentOption(NoRootlessExit)) + { + #ifdef WARNING + fprintf(stderr, "nxagentBlockHandler: No application running. Closing the session.\n"); +--- a/nx-X11/programs/Xserver/hw/nxagent/Options.c ++++ b/nx-X11/programs/Xserver/hw/nxagent/Options.c +@@ -56,6 +56,7 @@ + nxagentOptions.Persistent = 1; + nxagentOptions.Rootless = UNDEFINED; + nxagentOptions.Fullscreen = UNDEFINED; ++ nxagentOptions.NoRootlessExit = False; + + nxagentOptions.X = 0; + nxagentOptions.Y = 0; +--- a/nx-X11/programs/Xserver/hw/nxagent/Options.h ++++ b/nx-X11/programs/Xserver/hw/nxagent/Options.h +@@ -381,6 +381,13 @@ + + int ImageRateLimit; + ++ /* ++ * True if agent should not exit if there are no ++ * clients in rootless mode ++ */ ++ ++ int NoRootlessExit; ++ + } AgentOptionsRec; + + typedef AgentOptionsRec *AgentOptionsPtr; |