On Thu, Nov 7, 2013 at 15:11:30 +0100, Daniel Martin wrote: > Just a nitpick: > > On 6 November 2013 01:41, Keith Packard <kei...@keithp.com> wrote: > > Requests signal which replies will have fds, and the replies report > > how many fds they expect in byte 1. > > > > Signed-off-by: Keith Packard <kei...@keithp.com> > > --- > > src/c_client.py | 65 ++++++++++++++++++++++++++++++++++++++++++++---- > > src/xcb_in.c | 76 > > ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- > > src/xcbext.h | 4 ++- > > src/xcbint.h | 8 +++--- > > 4 files changed, 141 insertions(+), 12 deletions(-) > > > > diff --git a/src/c_client.py b/src/c_client.py > > index ed92185..4c5da0a 100644 > > --- a/src/c_client.py > > +++ b/src/c_client.py > > @@ -303,6 +303,7 @@ def _c_type_setup(self, name, postfix): > > self.c_reply_name = _n(name + ('reply',)) > > self.c_reply_type = _t(name + ('reply',)) > > self.c_cookie_type = _t(name + ('cookie',)) > > + self.c_reply_fds_name = _n(name + ('reply_fds',)) > > > > self.need_aux = False > > self.need_serialize = False > > @@ -1835,7 +1836,7 @@ def c_union(self, name): > > _c_complex(self) > > _c_iterator(self, name) > > > > -def _c_request_helper(self, name, cookie_type, void, regular, aux=False): > > +def _c_request_helper(self, name, cookie_type, void, regular, aux=False, > > reply_fds=False): > > ''' > > Declares a request function. > > ''' > > @@ -1864,6 +1865,12 @@ def _c_request_helper(self, name, cookie_type, void, > > regular, aux=False): > > # What flag is passed to xcb_request > > func_flags = '0' if (void and regular) or (not void and not regular) > > else 'XCB_REQUEST_CHECKED' > > > > + if reply_fds: > > + if func_flags == '0': > > + func_flags = 'XCB_REQUEST_REPLY_FDS' > > + else: > > + func_flags = func_flags + '|XCB_REQUEST_REPLY_FDS' > > + > > # Global extension id variable or NULL for xproto > > func_ext_global = '&' + _ns.c_ext_global_name if _ns.is_ext else '0' > > > > @@ -2256,6 +2263,51 @@ def _c_reply(self, name): > > > > _c('}') > > > > +def _c_reply_has_fds(self): > > + for field in self.fields: > > + if field.isfd: > > + return True > > + return False > > This could be more pythonic: > > return any([field.isfd for field in self.fields]) > better even without the []
Cheers, Julien _______________________________________________ xorg-devel@lists.x.org: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel