diff options
author | marha <marha@users.sourceforge.net> | 2009-07-25 12:47:39 +0000 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2009-07-25 12:47:39 +0000 |
commit | cb897b8ffca0a68c017c2edfa523cb5ff0491962 (patch) | |
tree | 8b4e9e320258d5280ce454163c49363030626c1a /libX11/src/Host.c | |
parent | 213d71f78d6f9e35b23c00e35f9919efc9670b1e (diff) | |
parent | c87efef42f76c2ff0dcfad2842ab369beffd21de (diff) | |
download | vcxsrv-cb897b8ffca0a68c017c2edfa523cb5ff0491962.tar.gz vcxsrv-cb897b8ffca0a68c017c2edfa523cb5ff0491962.tar.bz2 vcxsrv-cb897b8ffca0a68c017c2edfa523cb5ff0491962.zip |
svn merge file:///D:/svnrepos/vcxsrv/branches/released .
Diffstat (limited to 'libX11/src/Host.c')
-rw-r--r-- | libX11/src/Host.c | 28 |
1 files changed, 12 insertions, 16 deletions
diff --git a/libX11/src/Host.c b/libX11/src/Host.c index a1ca8701c..a25e275f4 100644 --- a/libX11/src/Host.c +++ b/libX11/src/Host.c @@ -54,13 +54,11 @@ XAddHost ( XServerInterpretedAddress *siAddr; int addrlen; - if (host->family == FamilyServerInterpreted) { - siAddr = (XServerInterpretedAddress *) host->address; - addrlen = siAddr->typelength + siAddr->valuelength + 1; - } else { - addrlen = host->length; - } - + siAddr = host->family == FamilyServerInterpreted ? + (XServerInterpretedAddress *)host->address : NULL; + addrlen = siAddr ? + siAddr->typelength + siAddr->valuelength + 1 : host->length; + length = (addrlen + 3) & ~0x3; /* round up */ LockDisplay(dpy); @@ -68,7 +66,7 @@ XAddHost ( req->mode = HostInsert; req->hostFamily = host->family; req->hostLength = addrlen; - if (host->family == FamilyServerInterpreted) { + if (siAddr) { char *dest = (char *) NEXTPTR(req,xChangeHostsReq); memcpy(dest, siAddr->type, siAddr->typelength); dest[siAddr->typelength] = '\0'; @@ -91,13 +89,11 @@ XRemoveHost ( XServerInterpretedAddress *siAddr; int addrlen; - if (host->family == FamilyServerInterpreted) { - siAddr = (XServerInterpretedAddress *) host->address; - addrlen = siAddr->typelength + siAddr->valuelength + 1; - } else { - addrlen = host->length; - } - + siAddr = host->family == FamilyServerInterpreted ? + (XServerInterpretedAddress *)host->address : NULL; + addrlen = siAddr ? + siAddr->typelength + siAddr->valuelength + 1 : host->length; + length = (addrlen + 3) & ~0x3; /* round up */ LockDisplay(dpy); @@ -105,7 +101,7 @@ XRemoveHost ( req->mode = HostDelete; req->hostFamily = host->family; req->hostLength = addrlen; - if (host->family == FamilyServerInterpreted) { + if (siAddr) { char *dest = (char *) NEXTPTR(req,xChangeHostsReq); memcpy(dest, siAddr->type, siAddr->typelength); dest[siAddr->typelength] = '\0'; |