Revert "poll_for_response: Really handle xcb_poll_for_reply getting a reply."

This reverts commit c115095d7f. We *do*
need to check poll_for_event every time through the loop in
poll_for_response, so the commit did too much.
This commit is contained in:
Jamey Sharp 2010-06-21 13:24:24 -07:00
parent 4a8b6528ff
commit 301ec5b41e

View file

@ -232,25 +232,19 @@ static xcb_generic_reply_t *poll_for_response(Display *dpy)
void *response;
xcb_generic_error_t *error;
PendingRequest *req;
response = poll_for_event(dpy);
if (response)
return response;
while((req = dpy->xcb->pending_requests) &&
while(!(response = poll_for_event(dpy)) &&
(req = dpy->xcb->pending_requests) &&
!req->reply_waiter &&
xcb_poll_for_reply(dpy->xcb->connection, req->sequence, &response, &error))
{
assert(XLIB_SEQUENCE_COMPARE(req->sequence, <=, dpy->request));
dpy->last_request_read = req->sequence;
if(response)
return response;
dequeue_pending_request(dpy, req);
if(!response)
dequeue_pending_request(dpy, req);
if(error)
return (xcb_generic_reply_t *) error;
}
return NULL;
return response;
}
static void handle_response(Display *dpy, xcb_generic_reply_t *response, Bool in_XReply)