Subject: bug#14520: 24.3; minibuffer resizes when message contains bold or italic text

From: Klaus-Dieter Bauer <[email-masked]>
Date: Fri, 31 May 2013 16:28:53 +0200

When a message contains bold or italic text, the minibuffer is resized
incorrectly. E.g.  consider the following two commands:

(defun x () (interactive)
  (let ((message "Hello World"))
    (put-text-property 0 5 'face 'bold message)
    (message message)))

(defun y () (interactive)
  (let ((message "Hello World"))
    (put-text-property 0 5 'face '(:foreground "blue") message)
    (message message)))

On "M-x x" the minibuffer will look as if the message contained a
trailing newline. On "M-x y" the minibuffer will display correctly.

eldoc's tips become distracting as this causes random flickering of the
minibuffer while moving the cursor through code.

The problem is reproducible at least in all emacs-24.x-bin-i386.zip
releases on http://ftp.gnu.org/gnu/emacs/windows/

The problem is not reproducible in the Cygwin version
GNU Emacs 24.3.1 (i686-pc-cygwin, GTK+ Version 3.4.4) of 2013-04-26

In GNU Emacs 24.3.1 (i386-mingw-nt6.1.7601)
 of 2013-03-17 on MARVIN
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
 `configure --with-gcc (4.7) --cflags
 -ID:/devel/emacs/libs/libXpm-3.5.8/include
 -ID:/devel/emacs/libs/libXpm-3.5.8/src
 -ID:/devel/emacs/libs/libpng-dev_1.4.3-1/include
 -ID:/devel/emacs/libs/zlib-dev_1.2.5-2/include
 -ID:/devel/emacs/libs/giflib-4.1.4-1/include
 -ID:/devel/emacs/libs/jpeg-6b-4/include
 -ID:/devel/emacs/libs/tiff-3.8.2-1/include
 -ID:/devel/emacs/libs/gnutls-3.0.9/include
 -ID:/devel/emacs/libs/libiconv-1.13.1-1-dev/include
 -ID:/devel/emacs/libs/libxml2-2.7.8/include/libxml2'

Important settings:
  value of $LANG: ENU
  locale-coding-system: cp1252
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  eldoc-mode: t
  show-paren-mode: t
  cua-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t
  hs-minor-mode: t

Recent input:
M-x b u g <tab> <S-home> r e p o r t <tab> <return

Recent messages:
Loading paren...done
Loading e:/lib/emacs/emacs.el (source)...
Source file `e:/lib/emacs/my-unbound-interactive-functions.el' newer than
byte-compiled file
Source file `e:/lib/emacs/my-global-bindings.el' newer than byte-compiled
file
Fill column set to 70 (was 70)
Backup files ("file.txt~") will be created in
'C:\Users\klaus\AppData\Local\Temp/emacsbackupfiles-klaus'
Source file `e:/lib/emacs/my--org.el' newer than byte-compiled file
Zenified!
Loading e:/lib/emacs/emacs.el (source)...done
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/gnuplot-0.6.0/gnuplot hides
e:/lib/emacs//plugins/gnuplot-mode/gnuplot
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/python-20120402/python hides
c:/Program Files/emacs-24.3/lisp/progmodes/python
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org hides
c:/Program Files/emacs-24.3/lisp/org/org
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-w3m hides
c:/Program Files/emacs-24.3/lisp/org/org-w3m
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-version hides
c:/Program Files/emacs-24.3/lisp/org/org-version
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-timer hides
c:/Program Files/emacs-24.3/lisp/org/org-timer
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-table hides
c:/Program Files/emacs-24.3/lisp/org/org-table
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-src hides
c:/Program Files/emacs-24.3/lisp/org/org-src
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-rmail hides
c:/Program Files/emacs-24.3/lisp/org/org-rmail
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-protocol
hides c:/Program Files/emacs-24.3/lisp/org/org-protocol
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-plot hides
c:/Program Files/emacs-24.3/lisp/org/org-plot
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-pcomplete
hides c:/Program Files/emacs-24.3/lisp/org/org-pcomplete
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-mouse hides
c:/Program Files/emacs-24.3/lisp/org/org-mouse
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-mobile hides
c:/Program Files/emacs-24.3/lisp/org/org-mobile
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-mhe hides
c:/Program Files/emacs-24.3/lisp/org/org-mhe
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-macs hides
c:/Program Files/emacs-24.3/lisp/org/org-macs
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-loaddefs
hides c:/Program Files/emacs-24.3/lisp/org/org-loaddefs
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-list hides
c:/Program Files/emacs-24.3/lisp/org/org-list
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-irc hides
c:/Program Files/emacs-24.3/lisp/org/org-irc
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-install hides
c:/Program Files/emacs-24.3/lisp/org/org-install
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-inlinetask
hides c:/Program Files/emacs-24.3/lisp/org/org-inlinetask
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-info hides
c:/Program Files/emacs-24.3/lisp/org/org-info
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-indent hides
c:/Program Files/emacs-24.3/lisp/org/org-indent
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-id hides
c:/Program Files/emacs-24.3/lisp/org/org-id
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-habit hides
c:/Program Files/emacs-24.3/lisp/org/org-habit
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-gnus hides
c:/Program Files/emacs-24.3/lisp/org/org-gnus
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-footnote
hides c:/Program Files/emacs-24.3/lisp/org/org-footnote
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-feed hides
c:/Program Files/emacs-24.3/lisp/org/org-feed
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-faces hides
c:/Program Files/emacs-24.3/lisp/org/org-faces
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-eshell hides
c:/Program Files/emacs-24.3/lisp/org/org-eshell
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-entities
hides c:/Program Files/emacs-24.3/lisp/org/org-entities
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-element hides
c:/Program Files/emacs-24.3/lisp/org/org-element
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-docview hides
c:/Program Files/emacs-24.3/lisp/org/org-docview
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-datetree
hides c:/Program Files/emacs-24.3/lisp/org/org-datetree
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-ctags hides
c:/Program Files/emacs-24.3/lisp/org/org-ctags
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-crypt hides
c:/Program Files/emacs-24.3/lisp/org/org-crypt
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-compat hides
c:/Program Files/emacs-24.3/lisp/org/org-compat
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-colview hides
c:/Program Files/emacs-24.3/lisp/org/org-colview
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-clock hides
c:/Program Files/emacs-24.3/lisp/org/org-clock
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-capture hides
c:/Program Files/emacs-24.3/lisp/org/org-capture
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-bibtex hides
c:/Program Files/emacs-24.3/lisp/org/org-bibtex
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-bbdb hides
c:/Program Files/emacs-24.3/lisp/org/org-bbdb
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-attach hides
c:/Program Files/emacs-24.3/lisp/org/org-attach
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-archive hides
c:/Program Files/emacs-24.3/lisp/org/org-archive
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/org-agenda hides
c:/Program Files/emacs-24.3/lisp/org/org-agenda
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob hides
c:/Program Files/emacs-24.3/lisp/org/ob
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-tangle hides
c:/Program Files/emacs-24.3/lisp/org/ob-tangle
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-table hides
c:/Program Files/emacs-24.3/lisp/org/ob-table
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-sqlite hides
c:/Program Files/emacs-24.3/lisp/org/ob-sqlite
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-sql hides
c:/Program Files/emacs-24.3/lisp/org/ob-sql
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-shen hides
c:/Program Files/emacs-24.3/lisp/org/ob-shen
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-sh hides
c:/Program Files/emacs-24.3/lisp/org/ob-sh
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-screen hides
c:/Program Files/emacs-24.3/lisp/org/ob-screen
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-scheme hides
c:/Program Files/emacs-24.3/lisp/org/ob-scheme
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-scala hides
c:/Program Files/emacs-24.3/lisp/org/ob-scala
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-sass hides
c:/Program Files/emacs-24.3/lisp/org/ob-sass
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-ruby hides
c:/Program Files/emacs-24.3/lisp/org/ob-ruby
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-ref hides
c:/Program Files/emacs-24.3/lisp/org/ob-ref
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-R hides
c:/Program Files/emacs-24.3/lisp/org/ob-R
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-python hides
c:/Program Files/emacs-24.3/lisp/org/ob-python
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-plantuml hides
c:/Program Files/emacs-24.3/lisp/org/ob-plantuml
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-picolisp hides
c:/Program Files/emacs-24.3/lisp/org/ob-picolisp
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-perl hides
c:/Program Files/emacs-24.3/lisp/org/ob-perl
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-org hides
c:/Program Files/emacs-24.3/lisp/org/ob-org
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-octave hides
c:/Program Files/emacs-24.3/lisp/org/ob-octave
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-ocaml hides
c:/Program Files/emacs-24.3/lisp/org/ob-ocaml
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-mscgen hides
c:/Program Files/emacs-24.3/lisp/org/ob-mscgen
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-maxima hides
c:/Program Files/emacs-24.3/lisp/org/ob-maxima
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-matlab hides
c:/Program Files/emacs-24.3/lisp/org/ob-matlab
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-lob hides
c:/Program Files/emacs-24.3/lisp/org/ob-lob
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-lisp hides
c:/Program Files/emacs-24.3/lisp/org/ob-lisp
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-lilypond hides
c:/Program Files/emacs-24.3/lisp/org/ob-lilypond
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-ledger hides
c:/Program Files/emacs-24.3/lisp/org/ob-ledger
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-latex hides
c:/Program Files/emacs-24.3/lisp/org/ob-latex
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-keys hides
c:/Program Files/emacs-24.3/lisp/org/ob-keys
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-js hides
c:/Program Files/emacs-24.3/lisp/org/ob-js
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-java hides
c:/Program Files/emacs-24.3/lisp/org/ob-java
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-io hides
c:/Program Files/emacs-24.3/lisp/org/ob-io
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-haskell hides
c:/Program Files/emacs-24.3/lisp/org/ob-haskell
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-gnuplot hides
c:/Program Files/emacs-24.3/lisp/org/ob-gnuplot
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-fortran hides
c:/Program Files/emacs-24.3/lisp/org/ob-fortran
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-exp hides
c:/Program Files/emacs-24.3/lisp/org/ob-exp
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-eval hides
c:/Program Files/emacs-24.3/lisp/org/ob-eval
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-emacs-lisp
hides c:/Program Files/emacs-24.3/lisp/org/ob-emacs-lisp
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-dot hides
c:/Program Files/emacs-24.3/lisp/org/ob-dot
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-ditaa hides
c:/Program Files/emacs-24.3/lisp/org/ob-ditaa
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-css hides
c:/Program Files/emacs-24.3/lisp/org/ob-css
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-comint hides
c:/Program Files/emacs-24.3/lisp/org/ob-comint
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-clojure hides
c:/Program Files/emacs-24.3/lisp/org/ob-clojure
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-calc hides
c:/Program Files/emacs-24.3/lisp/org/ob-calc
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-C hides
c:/Program Files/emacs-24.3/lisp/org/ob-C
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-awk hides
c:/Program Files/emacs-24.3/lisp/org/ob-awk
c:/Users/klaus/AppData/Roaming/.emacs.d/elpa/org-20130522/ob-asymptote
hides c:/Program Files/emacs-24.3/lisp/org/ob-asymptote

Features:
(shadow sort gnus-util mail-extr emacsbug message 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
mail-prsvr mail-utils eldoc edmacro kmacro auctex-autoloads tex-site
color-theme-autoloads elnode-autoloads db-autoloads creole-autoloads
el-x-autoloads finder-inf fakir-autoloads gnuplot-autoloads kv-autoloads
minimap-autoloads noflet-autoloads org-autoloads info python-autoloads
web-autoloads tabbar easy-mmode my--org advice help-fns advice-preload
skeleton hideshow easymenu package my-cygwin my-global-bindings
two-column my-unbound-interactive-functions alt-hack my-benchmark-utils
cl-macs gv cl-lib saveplace paren cua-base cus-start cus-load time-date
tooltip ediff-hook vc-hooks lisp-float-type mwheel dos-w32 ls-lisp
w32-common-fns disp-table w32-win w32-vars tool-bar dnd fontset image
regexp-opt fringe tabulated-list newcomment lisp-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core frame cham georgian utf-8-lang misc-lang
vietnamese tibetan thai tai-viet lao korean japanese hebrew greek
romanian slovak czech european ethiopic indian cyrillic chinese
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs
button faces cus-face macroexp files text-properties overlay sha1 md5
base64 format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process w32 multi-tty emacs)