Subject: bug#5988: 24.0.50; bidi-display-reordering interferes with overlays

From: Ivan Andrus <[email-masked]>
Date: Tue, 20 Apr 2010 19:28:46 +0200

emacs -Q

Then evaluate in a scratch buffer:

(let ((ov (make-overlay (+ 2 (point-min)) (- (point-max) 160))))
  (overlay-put ov 'display "just a test")
  ;; (delete-overlay ov)
  )

(setq-default bidi-display-reordering t)
(setq-default bidi-display-reordering nil)

Note that when bidi-display-reordering is t, the text in the buffer is
displayed as well as the display property of the overlay, but when nil,
the text "just a test" is displayed instead.

In GNU Emacs 24.0.50.15 (x86_64-apple-darwin10.3.0, NS apple-appkit-1038.29)
of 2010-04-20 on parduc.local
Windowing system distributor `Apple', version 10.3.1038
configured using `configure  '--with-ns''

Important settings:
  value of $LC_ALL: C
  value of $LC_COLLATE: en_US
  value of $LC_CTYPE: en_US
  value of $LC_MESSAGES: en_US
  value of $LC_MONETARY: en_US
  value of $LC_NUMERIC: en_US
  value of $LC_TIME: en_US
  value of $LANG: en_US
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Lisp Interaction

Minor modes in effect:
  tooltip-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
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<down-mouse-1> <mouse-1> <down> <return> <up> <up> 
<up> <up> <left> <left> <left> <help-echo> <ns-toggle-toolbar> 
<ns-toggle-toolbar> <ns-toggle-toolbar> <help-echo> 
<tool-bar> <kill-buffer> C-y TAB TAB <up> <up> <up> 
<up> <up> <up> C-k C-k C-x C-e <C-down> C-x C-e <help-echo> 
<down-mouse-1> <mouse-1> <double-down-mouse-1> <double-mouse-1> 
<triple-down-mouse-1> <triple-mouse-1> <down-mouse-1> 
<mouse-movement> <mouse-movement> <drag-mouse-1> C-w 
C-y TAB TAB TAB <C-up> <up> C-k <down> <down> <down> 
<down> <down> <down> <down> C-y <up> C-x C-e <down> 
<down> C-x C-e <left> <backspace> n i l C-e C-x C-e 
<C-s-268632064> <C-up> <C-up> <C-up> C-k C-k C-k C-k 
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k 
C-k C-k C-k C-y <C-S-return> <down-mouse-1> <mouse-movement> 
<mouse-movement> <drag-mouse-1> C-w C-y <up> <up> C-x 
C-e <down> <down> C-x C-e <down> C-x C-e <up> C-x C-e 
<down> <down> s-x r e s-x r e C-a M-x r e p <tab> o 
<tab> r <tab> <return> B i d i r e c t i o n a l SPC 
C-a C-y s-k M-x <up> <return>

Recent messages:
nil
kill-line: End of buffer
Mark set [2 times]
"just a test"
t
byte-code: End of buffer
nil
t
byte-code: End of buffer
Making completion list... [2 times]
Quit

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr message rfc822 mml mml-sec mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mailabbrev mail-utils gmm-utils mailheader emacsbug
help-mode view tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win
easymenu tool-bar dnd fontset image fringe lisp-mode register page
menu-bar rfn-eshadow timer select scroll-bar mldrag 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 loaddefs button
minibuffer faces cus-face files text-properties overlay md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind ns multi-tty emacs)