Currently XCB will dereference a null pointer if the XC-MISC extension is absent or doesn't work and a new batch of XIDs is needed. Probably it should return an invalid XID instead (anything >= 2**29 should work, including -1). This behavior then needs to be documented so programmers realize this can fail. Latency-hiding the XC-MISC request when we're nearly out of XIDs might be a feature too. Some API design thought should go into this: ideally it would be under the control of the application if desired, happening automatically if the application doesn't take care of it.
The enhancement portion has been moved to bug 8204, while the fix portion has been fixed by Jamey.
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.