GNU bug report logs - #20410
24.5.50; cursor not updated after yank of non-ASCII string from the clipboard

Previous Next

Package: emacs;

Reported by: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>

Date: Thu, 23 Apr 2015 10:01:02 UTC

Severity: normal

Found in version 24.5.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: YAMAMOTO Mitsuharu <mituharu <at> math.s.chiba-u.ac.jp>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 20410 <at> debbugs.gnu.org
Subject: bug#20410: 24.5.50; cursor not updated after yank of non-ASCII string from the clipboard
Date: Sat, 25 Apr 2015 18:49:56 +0900
[Message part 1 (text/plain, inline)]
>>>>> On Fri, 24 Apr 2015 09:58:28 +0300, Eli Zaretskii <eliz <at> gnu.org> said:

>> > What does "C-x =" report before and after step 5?
>> 
>> It says
>> 
>> Char: C-j (10, #o12, #xa) point=191 of 192 (99%) column=0
>> 
>> So, the cursor is actually moved internally, but display is not
>> updated accordingly.

> You show only one result of "C-x =", so it's hard to interpret it,
> especially since you didn't show what was displayed after the paste.

I thought it was clear from the screenshot attached in the first mail.
The point value in the output of "C-x =" indicates that the cursor is
between the initial message of the *scratch* buffer and the yanked
text.

(length ";; This buffer is for notes you don't want to save, and for Lisp evaluation.
;; If you want to create a file, visit that file with C-x C-f,
;; then enter the text in that file's own buffer.
")
=> 190

> Does the cursor move to the correct place if you type C-l or invoke
> redraw-display, after performing the recipe?

The cursor appears.  But the cursor at the old position is not
cleared.  See the attached screenshot.

> In any case, cursor motion and display are unrelated to pasting from
> the clipboard, so I wonder whether you could reproduce this without
> the paste, just by typing that character.  I also wonder what does all
> this have to do with expose events, as mentioned in your original
> report.  Anything that I could reproduce here and debug it would be
> helpful.

I could reproduce it without yank.

1. Create a file named a.el with the following contents:

  (global-set-key "a" (string #x3042))	; HIRAGANA LETTER A

2. $ emacs -Q -D -l a.el &
3. Type "a" to insert a Japanese character.
4. Type "C-p" to move the cursor upward.

Display is updated correctly until Step 3.  But Step 4 does not change
the display from the previous one.

As for expose events, I suspect the current matrices get corrupted,
because the result of git bisect implies that it has something to do
with adjustment of glyph matrices triggered by font loading.

				     YAMAMOTO Mitsuharu
				mituharu <at> math.s.chiba-u.ac.jp
[after-C-l.png (image/png, inline)]

This bug report was last modified 10 years and 83 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.