diff options
author | marha <marha@users.sourceforge.net> | 2013-11-19 07:53:39 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2013-11-19 07:53:39 +0100 |
commit | f75616ac3e99a6bb814803c823cb34533b9fc328 (patch) | |
tree | 83e9fff2bbf6c94df686a938d00858e0a06adcf0 /libxcb/src/xcb_in.c | |
parent | cb043e6091c966fa8b772ec86fbc026ddcac9d87 (diff) | |
parent | 73db05c85f7a8cf2439f7c333ede6ff2dc4877d7 (diff) | |
download | vcxsrv-f75616ac3e99a6bb814803c823cb34533b9fc328.tar.gz vcxsrv-f75616ac3e99a6bb814803c823cb34533b9fc328.tar.bz2 vcxsrv-f75616ac3e99a6bb814803c823cb34533b9fc328.zip |
Merge remote-tracking branch 'origin/released'
* origin/released:
libxcb xcb-proto xserver mesa git update 19 nov 2013
Diffstat (limited to 'libxcb/src/xcb_in.c')
-rw-r--r-- | libxcb/src/xcb_in.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libxcb/src/xcb_in.c b/libxcb/src/xcb_in.c index b9b65d5ca..5506e3088 100644 --- a/libxcb/src/xcb_in.c +++ b/libxcb/src/xcb_in.c @@ -889,13 +889,16 @@ int _xcb_in_read(xcb_connection_t *c) .iov_base = c->in.queue + c->in.queue_len, .iov_len = sizeof(c->in.queue) - c->in.queue_len, }; - char cmsgbuf[CMSG_SPACE(sizeof(int) * XCB_MAX_PASS_FD)]; + union { + struct cmsghdr cmsghdr; + char buf[CMSG_SPACE(XCB_MAX_PASS_FD * sizeof(int))]; + } cmsgbuf; struct msghdr msg = { .msg_name = NULL, .msg_namelen = 0, .msg_iov = &iov, .msg_iovlen = 1, - .msg_control = cmsgbuf, + .msg_control = cmsgbuf.buf, .msg_controllen = CMSG_SPACE(sizeof(int) * (XCB_MAX_PASS_FD - c->in.in_fd.nfd)), }; n = recvmsg(c->fd, &msg, 0); |