[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#25863: 25.1; garbage display by small image
From: |
Eli Zaretskii |
Subject: |
bug#25863: 25.1; garbage display by small image |
Date: |
Sat, 25 Feb 2017 16:05:54 +0200 |
severity 25863 minor
thanks
> Date: Sat, 25 Feb 2017 14:19:19 +0200
> From: Eli Zaretskii <eliz@gnu.org>
> Cc: 25863@debbugs.gnu.org
>
> > (let ((h 16))
> > (switch-to-buffer (generate-new-buffer "temp"))
> > (insert-image (create-image (concat (format "P4\n8 %d\n" h)
> > (make-string h 127))
> > 'pbm t))
> > (insert ?g)
> > (redisplay)
> > (delete-char -1))
>
> Thanks, I see it now.
Looks like a basic deficiency in the design of the Emacs redisplay,
and in particular the way screen lines are redrawn when they have
variable-height glyphs.
Fortunately, this is a fairly rare situation. In the recipe above,
it's enough to make a very small change to make the problem go away:
(let ((h 16))
(switch-to-buffer (generate-new-buffer "temp"))
(insert "x") ;; <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
(insert-image (create-image (concat (format "P4\n8 %d\n" h)
(make-string h 127))
'pbm t))
(insert ?g)
(redisplay)
(delete-char -1))
Or maybe I'm missing something; ideas are welcome.
- bug#25863: 25.1; garbage display by small image, ynyaaa, 2017/02/24
- bug#25863: 25.1; garbage display by small image, Eli Zaretskii, 2017/02/24
- bug#25863: 25.1; garbage display by small image, ynyaaa, 2017/02/25
- bug#25863: 25.1; garbage display by small image, Eli Zaretskii, 2017/02/25
- bug#25863: 25.1; garbage display by small image, ynyaaa, 2017/02/25
- bug#25863: 25.1; garbage display by small image, Eli Zaretskii, 2017/02/25
- bug#25863: 25.1; garbage display by small image,
Eli Zaretskii <=
- bug#25863: 25.1; garbage display by small image, ynyaaa, 2017/02/25
- bug#25863: 25.1; garbage display by small image, Eli Zaretskii, 2017/02/26