aboutsummaryrefslogtreecommitdiff
path: root/libxcb/src/xcb_in.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-11-19 07:53:39 +0100
committermarha <marha@users.sourceforge.net>2013-11-19 07:53:39 +0100
commitf75616ac3e99a6bb814803c823cb34533b9fc328 (patch)
tree83e9fff2bbf6c94df686a938d00858e0a06adcf0 /libxcb/src/xcb_in.c
parentcb043e6091c966fa8b772ec86fbc026ddcac9d87 (diff)
parent73db05c85f7a8cf2439f7c333ede6ff2dc4877d7 (diff)
downloadvcxsrv-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.c7
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);