Subject: 25.0.50; cursor height wrong when line-spacing is used

From: David Reitter <[email-masked]>
Date: Wed, 4 Nov 2015 23:21:13 -0500

Start Emacs 25 (master branch)  (with -Q if you like)

(setq line-spacing 1.0)

(Note how the display doesn’t update, so enter C-l to force it)

Result: cursor is displayed with wrong (large, two-line) height when at the end of a line, and correctly when not at the end of a line.

Works similarly with different cursor types.

This wasn’t the case in Emacs 24.

Also note bug#17977, although I disagree about the reporter’s preferences.  In any case, the cursor’s height should not change.  If it has to be this high, the actual text line should be vertically centered.

In GNU Emacs 25.0.50.1 (x86_64-apple-darwin15.0.0, NS appkit-1404.11 Version 10.11 (Build 15A284))
 of 2015-11-04
Repository revision: 5401bb8645f955b6fde8c0a5e5c8cf5ec1cab626
Windowing system distributor 'Apple', version 10.3.1404
Configured using:
 'configure 'CFLAGS=-O3 -g''

Configured features:
RSVG DBUS ACL LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS

Important settings:
  value of $LANG: en_US.UTF-8
  locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
  which-function-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
.emacs: (lambda (x) ...) quoted with ' rather than with #' [2 times]
For information about GNU Emacs and the GNU system, type C-h C-a.
1.0
next-line: End of buffer [2 times]

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message dired format-spec
rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util help-fns help-mode easymenu cl-loaddefs pcase cl-lib mail-prsvr
mail-utils warnings ghostedit ghostedit-stopwords-en easy-mmode
which-func imenu time-date mule-util tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel ns-win term/common-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer
select scroll-bar mouse jit-lock font-lock syntax facemenu font-core
frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan
thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote dbusbind cocoa ns
multi-tty make-network-process emacs)

Memory information:
((conses 16 87331 6412)
 (symbols 48 19011 0)
 (miscs 40 49 232)
 (strings 32 16448 5934)
 (string-bytes 1 461013)
 (vectors 16 10826)
 (vector-slots 8 452328 5852)
 (floats 8 156 200)
 (intervals 56 221 6)
 (buffers 976 12))