aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw
diff options
context:
space:
mode:
authorMihai Moldovan <ionic@ionic.de>2015-02-13 13:41:31 +0100
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2015-02-13 13:41:31 +0100
commit6e662473126d0668493732ece7e3c3bb1b0ea72c (patch)
treec857c6b64a7bb03b4c54625479de4b2df2953c8c /nx-X11/programs/Xserver/hw
parenta8fb7d4f5149e28216ffd38838af1cbfd6527002 (diff)
downloadnx-libs-6e662473126d0668493732ece7e3c3bb1b0ea72c.tar.gz
nx-libs-6e662473126d0668493732ece7e3c3bb1b0ea72c.tar.bz2
nx-libs-6e662473126d0668493732ece7e3c3bb1b0ea72c.zip
Several fixes for building debug versions of NX (990_fix-DEBUG-and-TEST-builds.full.patch).
(1) In nx-X11/programs/Xserver/dix: Fix several compile errors when specifying -DDEBUG globally. Previous GCC versions were more liberal and the code thus compiled. Also initialize/reset a count variable correctly. (2) In nx-X11/programs/Xserver/hw/nxagent/Render.c: Check for pSrc->pDrawable to exist instead of having nxagent segfault when it does not. This enables the possibility of compiling all nxagent modules in TEST mode.
Diffstat (limited to 'nx-X11/programs/Xserver/hw')
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Render.c9
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c2
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c2
3 files changed, 7 insertions, 6 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Render.c b/nx-X11/programs/Xserver/hw/nxagent/Render.c
index 41a1ec02e..c5fd06352 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Render.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Render.c
@@ -1678,10 +1678,11 @@ FIXME: Is this useful or just a waste of bandwidth?
#ifdef TEST
- fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n",
- (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"),
- pSrc -> pDrawable -> width, pSrc -> pDrawable -> height);
-
+ if (pSrc->pDrawable) {
+ fprintf(stderr, "nxagentTrapezoids: Source is a [%s] of geometry [%d,%d].\n",
+ (pSrc -> pDrawable -> type == DRAWABLE_PIXMAP ? "pixmap" : "window"),
+ pSrc -> pDrawable -> width, pSrc -> pDrawable -> height);
+ }
if (pSrc ->pDrawable != pDst -> pDrawable)
{
fprintf(stderr, "nxagentTrapezoids: Destination is a [%s] of geometry [%d,%d].\n",
diff --git a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c
index f18c09fe4..3d9ee8c7f 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdispatch.c
@@ -735,7 +735,7 @@ Reply Total Cached Bits In Bits Out Bits/Reply Ratio
client->sequence++;
#ifdef DEBUG
- if (client->requestLogIndex == MAX_REQUEST_LOG)
+ if ((client->requestLogIndex >= MAX_REQUEST_LOG) || (client->requestLogIndex <= 0))
client->requestLogIndex = 0;
client->requestLog[client->requestLogIndex] = MAJOROP;
client->requestLogIndex++;
diff --git a/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c b/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c
index 3234c9929..2b642692f 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/X/NXdixfonts.c
@@ -2351,7 +2351,7 @@ dump_char_ascii(CharInfoPtr cip)
byte = 0;
for (l = 0; l <= (cip->metrics.rightSideBearing -
cip->metrics.leftSideBearing); l++) {
- if (maskTab[l & 7] & row[l >> 3])
+ if (maskTab[l & 7] & (((int *)row)[l >> 3]))
putchar('X');
else
putchar('.');