When XCB request generation fails, a request cookie with a sequence number of zero is returned. Unfortunately, applications may need to know more than that there was just a failure. In particular, XCB requests may need to use an extension implicitly to complete (e.g. BIGREQUESTS) and may find that the server doesn't support that extension. Is an API change needed here? We don't currently know.
Better summary title added.
I've posted a series of patches to fix this on the mailing list. After a suitable review period I'll push them and close this bug.
Ian Osgood noticed a bug in my patch set: it calls get_event from XCBPollForEvent without holding the lock. Ian also suggests renaming XCBConnectionHasError to XCBDisconnected.
I've pushed a revised set of patches that addresses the bug Ian noticed, and seems correct to me.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.