aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/NXwindow.c5
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Splash.c15
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Window.c17
3 files changed, 20 insertions, 17 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/NXwindow.c b/nx-X11/programs/Xserver/hw/nxagent/NXwindow.c
index f67295c43..3cd8d0ce9 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/NXwindow.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/NXwindow.c
@@ -138,11 +138,14 @@ extern void nxagentSetVersionProperty(WindowPtr pWin);
void nxagentClearSplash(WindowPtr pW)
{
+ if (!pW)
+ return;
+
ScreenPtr pScreen = pW->drawable.pScreen;
if (pW->backgroundState == BackgroundPixmap)
{
- (*pScreen->DestroyPixmap)(pW->background.pixmap);
+ (*pScreen->DestroyPixmap)(pW->background.pixmap);
}
pW->backgroundState = BackgroundPixel;
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Splash.c b/nx-X11/programs/Xserver/hw/nxagent/Splash.c
index bc86fed36..e2e88674b 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Splash.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Splash.c
@@ -85,6 +85,12 @@ int nxagentShowSplashWindow(Window parentWindow)
XSetWindowAttributes attributes;
GC gc;
+ /*
+ * Show splash window only when running as X2Go Agent
+ */
+ if(!nxagentX2go)
+ return False;
+
#ifdef TEST
fprintf(stderr, "nxagentShowSplashWindow: Got called.\n");
#endif
@@ -175,15 +181,6 @@ void nxagentPaintLogo(Window win, GC gc, int scale, int width, int height)
XPoint rect[4];
int w, h, c, w2, h2;
- /*
- * Show only X2GO Logo when running as X2Go Agent
- */
- if(! nxagentX2go)
- {
- nxagentPixmapLogo = 0L;
- return;
- }
-
#ifdef DEBUG
fprintf(stderr, "nxagentPaintLogo: Got called.\n");
#endif
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Window.c b/nx-X11/programs/Xserver/hw/nxagent/Window.c
index fc59973bd..86ae1d607 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Window.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Window.c
@@ -670,15 +670,18 @@ Bool nxagentDestroyWindow(WindowPtr pWin)
nxagentSplashCount);
#endif
- if (nxagentSplashCount == 1)
+ if (nxagentRootTileWindow)
{
- XClearWindow(nxagentDisplay, nxagentWindowPriv(nxagentRootTileWindow) -> window);
- }
+ if (nxagentSplashCount == 1)
+ {
+ XClearWindow(nxagentDisplay, nxagentWindowPriv(nxagentRootTileWindow) -> window);
+ }
- if (pWin == nxagentRootTileWindow)
- {
- nxagentWindowPriv(nxagentRootTileWindow)->window = None;
- nxagentRootTileWindow = None;
+ if (pWin == nxagentRootTileWindow)
+ {
+ nxagentWindowPriv(nxagentRootTileWindow)->window = None;
+ nxagentRootTileWindow = None;
+ }
}
pWindowPriv->window = None;