Subject: bug#10195: 24.0.92; M-w may no longer provide visual feedback

From: Eli Zaretskii <[email-masked]>
Date: Sat, 03 Dec 2011 18:38:03 +0200

> From: Michael Welsh Duggan <[email-masked]>
> Cc: [email-masked],  [email-masked]
> Date: Sat, 03 Dec 2011 10:19:06 -0500
> 
> I just tried this again in a random buffer in my running non -Q emacs.
> The first M-w caused the cursor to bounce, the second did not, the third
> did, the fourth and fifth did not.  This is why I called the behavior
> inconsistent.  I just tried it in emacs -Q again, and had it bounce
> three times out of 15 tries.

Does "C-h l" show all the 15 M-w keystrokes you did?

> I am running in an unoptimized debug build with assertions turned on,
> and am familiar with gdb.  If there is any way I can help debug this,
> please let me know.

M-w calls sit-for after bouncing point to the position of mark; the
default waiting period is 1 sec.  How about instrumenting sit-for with
calls to `message' and seeing what's going on there?  One possibility
is that some input event terminates the wait immediately (see
sit-for's code).  Another possibility is that something happens in
read-event, in which case you will need to use GDB.  But I think it
would be good to see what's going on in sit-for before you go to the C
level.

Another idea is to replace the call to sit-for in kill-ring-save with
a call to sleep-for, and see if that changes anything.  If it does,
the probably culprit is sit-for and whatever it calls.

Thanks.