core: print error with full_sequence

ev->sequence was just the lower 16 bits of the sequence number.

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
This commit is contained in:
Yuxuan Shui 2022-12-14 12:35:37 +00:00
parent 23a29470e5
commit 8b189bc5ec
No known key found for this signature in database
GPG Key ID: D3A4405BE6CC17F4
1 changed files with 5 additions and 4 deletions

View File

@ -297,7 +297,7 @@ void discard_ignore(session_t *ps, unsigned long sequence) {
}
}
static int should_ignore(session_t *ps, unsigned long sequence) {
static int should_ignore(session_t *ps, uint32_t sequence) {
if (ps == NULL) {
// Do not ignore errors until the session has been initialized
return false;
@ -964,7 +964,7 @@ void root_damaged(session_t *ps) {
* Xlib error handler function.
*/
static int xerror(Display attr_unused *dpy, XErrorEvent *ev) {
if (!should_ignore(ps_g, ev->serial)) {
if (!should_ignore(ps_g, (uint32_t)ev->serial)) {
x_print_error(ev->serial, ev->request_code, ev->minor_code, ev->error_code);
}
return 0;
@ -974,8 +974,9 @@ static int xerror(Display attr_unused *dpy, XErrorEvent *ev) {
* XCB error handler function.
*/
void ev_xcb_error(session_t *ps, xcb_generic_error_t *err) {
if (!should_ignore(ps, err->sequence)) {
x_print_error(err->sequence, err->major_code, err->minor_code, err->error_code);
if (!should_ignore(ps, err->full_sequence)) {
x_print_error(err->full_sequence, err->major_code, err->minor_code,
err->error_code);
}
}