<div>While this question talks abnout XCB, I suppose it is more related to the protocol rather than usage of the XCB library, so I am forwarding this e-mail here.</div><div> </div><div>-------- Beginning of forwarded message --------</div><div>03.02.2021, 23:47, "Junk Mail" <ireallyhatespam@yandex.com>:</div><div> </div><div><div><div>Of course I could simply read what is written here <a href="https://gitlab.freedesktop.org/xorg/lib/libxcb/-/blob/master/src/xcbext.h#L62" rel="noopener noreferrer" target="_blank">https://gitlab.freedesktop.org/xorg/lib/libxcb/-/blob/master/src/xcbext.h#L62</a> but still, I felt the need for examples showing its usage and I found this:</div><div><span style="background-color:#eef2ff;color:#000000;float:none;font-family:'arial' , 'helvetica' , sans-serif;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px"><a href="https://github.com/StarchLinux/libxcb/blob/master/xproto.c#L1808" rel="noopener noreferrer">https://github.com/StarchLinux/libxcb/blob/master/xproto.c#L1808</a></span></div><div><div><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">2</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_base </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">(</span><span style="color:#000088;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">char</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">*)</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">&</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_out</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">2</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#000088;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">sizeof</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">(</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_out</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">);</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">3</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_base </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">0</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">3</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">-</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">2</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">&</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">3</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#880000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">// why?</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">4</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_base </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">(</span><span style="color:#000088;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">char</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">*)</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> value_list</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">4</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> xcb_popcount</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">(</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">value_mask</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">)</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">*</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#000088;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">sizeof</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">(</span><span style="color:#660066;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">uint32_t</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">);</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">5</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_base </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">0</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><br style="color:rgb( 0 , 0 , 0 );font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px" /><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">5</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">=</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">-</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">xcb_parts</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">[</span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">4</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">].</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">iov_len </span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">&</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#006666;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">3</span><span style="color:#666600;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">;</span><span style="color:#000000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px"> </span><span style="color:#880000;font-family:monospace;font-size:13.3333px;font-style:normal;font-weight:400;text-decoration-style:initial;text-indent:0px;text-transform:none;white-space:pre;word-spacing:0px">// why?</span></div><div> </div><div>It seems like there are "delimiters" (index 3 and 5 of xcb_parts, which is of type struct iovec), and their lengths are always the negative value of the length of the previous index AND'd with 3, I have found nothing obvious that could shed light here: <a href="https://gitlab.freedesktop.org/xorg/lib/libxcb/-/blob/master/src/xcb_out.c#L221" rel="noopener noreferrer" target="_blank">https://gitlab.freedesktop.org/xorg/lib/libxcb/-/blob/master/src/xcb_out.c#L221</a></div><div>So if I read this code correctly, indexes 3 and 5 are sent directly to the X server, but I failed to find if this is something required by the X Window System protocol spec.</div><div>Could anyone shed light on this?</div></div></div></div><div> </div><div>-------- End of forwarded message --------</div>