Spinning in _XReply
Rami Ylimäki
rami.ylimaki at vincit.fi
Fri Feb 25 05:18:37 PST 2011
On 02/25/2011 02:48 PM, Daniel Stone wrote:
> On Fri, Feb 25, 2011 at 02:08:38PM +0200, Rami Ylimäki wrote:
>> On 02/23/2011 04:35 PM, Michal Suchanek wrote:
>>>> X server seems to preserve the extension codes until the server is
>>>> regenerated and therefore all connections should use the same codes.
>>>>
>>> Is that guaranteed by some protocol or does it just happen to work as
>>> the requests in error handler did?
>> This is a good point and I can't find a definite answer for it.
>>
>> Documentation of "C.2.1 XInitExtension" from Xlib manual says that
>> the Xlib specific extension number in XExtCodes is connection
>> specific, which makes sense, because the number is managed
>> internally in Xlib and not asked from server. Then "C.5.11 Deriving
>> the Correct Extension Opcode" says that a separate XExtCodes should
>> be maintained for each connection.
>>
>> So I think that one shouldn't assume that opcodes stay the same,
>> even though it seems to be so in practice.
> Er, really? How would sending requests then work without an event from
> the server telling you to round-trip and get the extension list again?
>
Looks like I removed a little bit too much context when answering. The
original question was about whether one can trust that extension opcodes
are the same between connections. The answer seems to be that there is
no guarantee of that, because XExtCodes structure is connection
specific. Of course the opcodes should stay the same over the lifetime
of a connection but nobody guarantees, that XInitExtension returns the
same opcodes for different connections, even though in practice it's so.
-- Rami
More information about the xorg-devel
mailing list