From: Po Lu Date: Fri, 1 Jul 2022 08:17:11 +0000 (+0800) Subject: Prevent XdndPosition messages from rarely being sent out of band X-Git-Tag: emacs-29.0.90~1447^2~1308 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b55059bbeb8577a371f54d1750a31786f5ab5b7f;p=emacs.git Prevent XdndPosition messages from rarely being sent out of band * src/xterm.c (handle_one_xevent): Don't clear `x_dnd_waiting_for_status_window' if a pending position message was sent in reply to an XdndStatus event. --- diff --git a/src/xterm.c b/src/xterm.c index fa43371f05c..c83ddc6b9ea 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -16456,10 +16456,15 @@ handle_one_xevent (struct x_display_info *dpyinfo, XSendEvent (dpyinfo->display, target, False, NoEventMask, &x_dnd_pending_send_position); - } + x_dnd_pending_send_position.type = 0; - x_dnd_pending_send_position.type = 0; - x_dnd_waiting_for_status_window = None; + /* Since we sent another XdndPosition message, we + have to wait for another one in reply, so don't + reset `x_dnd_waiting_for_status_window' + here. */ + } + else + x_dnd_waiting_for_status_window = None; } goto done;