Subject: bug#22680: 25.0.91; Background colour sometimes not displayed when no foreground text (in shr?)

From: [email-masked] (N. Jackson)
Date: Mon, 15 Feb 2016 10:24:51 -0400

This is a follow up to bug#22547 which seems to be fixed for the
original test cases but is not fixed in general.

When reading mail/news in Gnus, HTML messages sometimes have patches
of missing background colour. That is, there are patches where the
window background colour shows through. This problem is not apparent
in Emacs 24.

The problem does not seem to happen where there is text in the
foreground. Rather, the HTML background colour is missing on some
lines (before and) after the text (begins or) ends.

mm-text-html-renderer is `shr' (default). Also, possibly relevant,
in Customize I have:

 '(shr-color-visible-luminance-min 75 t)
 '(shr-use-fonts nil)

Sreenshots and raw text of two new problematic messages are
attached.

In GNU Emacs 25.0.91.1 (x86_64-unknown-linux-gnu, GTK+ Version
 3.18.7) of 2016-02-14 built on moondust Windowing system
 distributor 'Fedora Project', version 11.0.11800000 System
 Description: Fedora release 23 (Twenty Three)

Configured using:
 'configure --prefix=/home/nlj/local/ --enable-checking=yes,glyphs
 'CFLAGS=-O0 -g3 -ggdb''

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GCONF GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11

Important settings:
  value of $LC_MONETARY: en_DK.utf8
  value of $LC_NUMERIC: en_DK.utf8
  value of $LC_TIME: en_DK.utf8
  value of $LANG: en_CA.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Text

Minor modes in effect:
  flyspell-mode: t
  recentf-mode: t
  display-battery-mode: t
  display-time-mode: t
  save-place-mode: t
  delete-selection-mode: t
  show-paren-mode: t
  savehist-mode: t
  electric-pair-mode: t
  desktop-save-mode: t
  cua-mode: t
  tooltip-mode: t
  global-eldoc-mode: t
  electric-indent-mode: t
  mouse-wheel-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
  size-indication-mode: t
  column-number-mode: t
  line-number-mode: t
  global-visual-line-mode: t
  visual-line-mode: t
  transient-mark-mode: t

Recent messages:
Mark saved where search started
Auto-saving...done
Mark saved where search started
Making completion list...
Type C-x 1 to delete the help window.
<mouse-7> is undefined
funcall-interactively: End of buffer [3 times]
next-line: End of buffer [5 times]
Saving file /home/nlj/bug-reports.txt...
Wrote /home/nlj/bug-reports.txt

Load-path shadows:
/home/nlj/.emacs.d/elpa/org-20151123/ob-gnuplot hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-gnuplot
/home/nlj/.emacs.d/elpa/org-20151123/org-eshell hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-eshell
/home/nlj/.emacs.d/elpa/org-20151123/ox-md hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-md
/home/nlj/.emacs.d/elpa/org-20151123/ob-shen hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-shen
/home/nlj/.emacs.d/elpa/org-20151123/org-timer hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-timer
/home/nlj/.emacs.d/elpa/org-20151123/ob-ruby hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-ruby
/home/nlj/.emacs.d/elpa/org-20151123/ox hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox
/home/nlj/.emacs.d/elpa/org-20151123/ox-html hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-html
/home/nlj/.emacs.d/elpa/org-20151123/ob-latex hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-latex
/home/nlj/.emacs.d/elpa/org-20151123/org-archive hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-archive
/home/nlj/.emacs.d/elpa/org-20151123/ob-org hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-org
/home/nlj/.emacs.d/elpa/org-20151123/org-install hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-install
/home/nlj/.emacs.d/elpa/org-20151123/ox-latex hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-latex
/home/nlj/.emacs.d/elpa/org-20151123/ob-sass hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-sass
/home/nlj/.emacs.d/elpa/org-20151123/ox-icalendar hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-icalendar
/home/nlj/.emacs.d/elpa/org-20151123/ob-screen hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-screen
/home/nlj/.emacs.d/elpa/org-20151123/org-bibtex hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-bibtex
/home/nlj/.emacs.d/elpa/org-20151123/org-footnote hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-footnote
/home/nlj/.emacs.d/elpa/org-20151123/org-datetree hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-datetree
/home/nlj/.emacs.d/elpa/org-20151123/org-colview hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-colview
/home/nlj/.emacs.d/elpa/org-20151123/org-attach hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-attach
/home/nlj/.emacs.d/elpa/org-20151123/org-mouse hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-mouse
/home/nlj/.emacs.d/elpa/org-20151123/ob-dot hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-dot
/home/nlj/.emacs.d/elpa/org-20151123/ob-scala hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-scala
/home/nlj/.emacs.d/elpa/org-20151123/org-compat hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-compat
/home/nlj/.emacs.d/elpa/org-20151123/ob-core hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-core
/home/nlj/.emacs.d/elpa/org-20151123/ob-awk hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-awk
/home/nlj/.emacs.d/elpa/org-20151123/ob-makefile hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-makefile
/home/nlj/.emacs.d/elpa/org-20151123/org-macro hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-macro
/home/nlj/.emacs.d/elpa/org-20151123/org-ctags hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-ctags
/home/nlj/.emacs.d/elpa/org-20151123/org-capture hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-capture
/home/nlj/.emacs.d/elpa/org-20151123/ox-beamer hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-beamer
/home/nlj/.emacs.d/elpa/org-20151123/org-mobile hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-mobile
/home/nlj/.emacs.d/elpa/org-20151123/org-indent hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-indent
/home/nlj/.emacs.d/elpa/org-20151123/ob-lilypond hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-lilypond
/home/nlj/.emacs.d/elpa/org-20151123/ob-asymptote hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-asymptote
/home/nlj/.emacs.d/elpa/org-20151123/ox-odt hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-odt
/home/nlj/.emacs.d/elpa/org-20151123/org-w3m hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-w3m
/home/nlj/.emacs.d/elpa/org-20151123/ob-plantuml hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-plantuml
/home/nlj/.emacs.d/elpa/org-20151123/ob-table hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-table
/home/nlj/.emacs.d/elpa/org-20151123/ob-ocaml hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-ocaml
/home/nlj/.emacs.d/elpa/org-20151123/org-crypt hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-crypt
/home/nlj/.emacs.d/elpa/org-20151123/ob-js hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-js
/home/nlj/.emacs.d/elpa/org-20151123/ob-clojure hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-clojure
/home/nlj/.emacs.d/elpa/org-20151123/ob-haskell hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-haskell
/home/nlj/.emacs.d/elpa/org-20151123/org-version hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-version
/home/nlj/.emacs.d/elpa/org-20151123/ob-scheme hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-scheme
/home/nlj/.emacs.d/elpa/org-20151123/org-table hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-table
/home/nlj/.emacs.d/elpa/org-20151123/ob-C hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-C
/home/nlj/.emacs.d/elpa/org-20151123/ob-ledger hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-ledger
/home/nlj/.emacs.d/elpa/org-20151123/ob-fortran hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-fortran
/home/nlj/.emacs.d/elpa/org-20151123/ob-sql hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-sql
/home/nlj/.emacs.d/elpa/org-20151123/org hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org
/home/nlj/.emacs.d/elpa/org-20151123/org-loaddefs hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-loaddefs
/home/nlj/.emacs.d/elpa/org-20151123/org-list hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-list
/home/nlj/.emacs.d/elpa/org-20151123/ob-lisp hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-lisp
/home/nlj/.emacs.d/elpa/org-20151123/org-docview hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-docview
/home/nlj/.emacs.d/elpa/org-20151123/ob-eval hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-eval
/home/nlj/.emacs.d/elpa/org-20151123/org-element hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-element
/home/nlj/.emacs.d/elpa/org-20151123/ob hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob
/home/nlj/.emacs.d/elpa/org-20151123/ox-ascii hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-ascii
/home/nlj/.emacs.d/elpa/org-20151123/org-info hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-info
/home/nlj/.emacs.d/elpa/org-20151123/ob-css hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-css
/home/nlj/.emacs.d/elpa/org-20151123/org-rmail hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-rmail
/home/nlj/.emacs.d/elpa/org-20151123/org-irc hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-irc
/home/nlj/.emacs.d/elpa/org-20151123/ob-tangle hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-tangle
/home/nlj/.emacs.d/elpa/org-20151123/ob-ditaa hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-ditaa
/home/nlj/.emacs.d/elpa/org-20151123/org-feed hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-feed
/home/nlj/.emacs.d/elpa/org-20151123/org-clock hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-clock
/home/nlj/.emacs.d/elpa/org-20151123/org-habit hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-habit
/home/nlj/.emacs.d/elpa/org-20151123/org-pcomplete hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-pcomplete
/home/nlj/.emacs.d/elpa/org-20151123/org-entities hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-entities
/home/nlj/.emacs.d/elpa/org-20151123/ob-io hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-io
/home/nlj/.emacs.d/elpa/org-20151123/ob-octave hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-octave
/home/nlj/.emacs.d/elpa/org-20151123/org-faces hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-faces
/home/nlj/.emacs.d/elpa/org-20151123/ob-perl hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-perl
/home/nlj/.emacs.d/elpa/org-20151123/org-src hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-src
/home/nlj/.emacs.d/elpa/org-20151123/org-protocol hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-protocol
/home/nlj/.emacs.d/elpa/org-20151123/ox-man hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-man
/home/nlj/.emacs.d/elpa/org-20151123/ob-python hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-python
/home/nlj/.emacs.d/elpa/org-20151123/ob-mscgen hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-mscgen
/home/nlj/.emacs.d/elpa/org-20151123/ox-texinfo hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-texinfo
/home/nlj/.emacs.d/elpa/org-20151123/ob-exp hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-exp
/home/nlj/.emacs.d/elpa/org-20151123/org-inlinetask hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-inlinetask
/home/nlj/.emacs.d/elpa/org-20151123/ox-publish hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-publish
/home/nlj/.emacs.d/elpa/org-20151123/ob-java hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-java
/home/nlj/.emacs.d/elpa/org-20151123/ob-sqlite hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-sqlite
/home/nlj/.emacs.d/elpa/org-20151123/org-mhe hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-mhe
/home/nlj/.emacs.d/elpa/org-20151123/ox-org hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ox-org
/home/nlj/.emacs.d/elpa/org-20151123/ob-R hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-R
/home/nlj/.emacs.d/elpa/org-20151123/ob-lob hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-lob
/home/nlj/.emacs.d/elpa/org-20151123/ob-picolisp hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-picolisp
/home/nlj/.emacs.d/elpa/org-20151123/org-agenda hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-agenda
/home/nlj/.emacs.d/elpa/org-20151123/ob-matlab hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-matlab
/home/nlj/.emacs.d/elpa/org-20151123/org-gnus hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-gnus
/home/nlj/.emacs.d/elpa/org-20151123/org-macs hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-macs
/home/nlj/.emacs.d/elpa/org-20151123/org-id hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-id
/home/nlj/.emacs.d/elpa/org-20151123/ob-keys hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-keys
/home/nlj/.emacs.d/elpa/org-20151123/ob-comint hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-comint
/home/nlj/.emacs.d/elpa/org-20151123/ob-ref hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-ref
/home/nlj/.emacs.d/elpa/org-20151123/org-bbdb hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-bbdb
/home/nlj/.emacs.d/elpa/org-20151123/ob-calc hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-calc
/home/nlj/.emacs.d/elpa/org-20151123/ob-emacs-lisp hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-emacs-lisp
/home/nlj/.emacs.d/elpa/org-20151123/ob-maxima hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/ob-maxima
/home/nlj/.emacs.d/elpa/org-20151123/org-plot hides /data/projects/vc/emacs/emacs-25.0.91/lisp/org/org-plot
~/.emacs.d/modules/emms/lisp/tq hides /data/projects/vc/emacs/emacs-25.0.91/lisp/emacs-lisp/tq

Features:
(shadow emacsbug character-fold misearch multi-isearch ibuf-ext ibuffer
eieio-opt speedbar sb-image ezimage dframe gnus-html mailalias smtpmail
bbdb-message sendmail nnir nndoc url-handlers url-cache debbugs-gnu
add-log debbugs soap-client url-http url-auth url-gw warnings rng-xsd
rng-dt rng-util xsd-regexp xml flow-fill gnus-cite smiley shr-color
color mm-archive gnus-async gnus-bcklg qp mail-extr gnus-ml disp-table
pp apropos cus-edit nndraft nnmh utf-7 epa-file epa derived
network-stream nsm starttls nnfolder bbdb-gnus bbdb-mua nnnil gnus-agent
gnus-srvr gnus-score score-mode nnvirtual gnus-msg nntp gnus-cache eww
mm-url url-queue shr seq dom subr-x browse-url cc-mode cc-fonts cc-guess
cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs sieve-mode
view flyspell ispell sage sage-load rx emms-bookmarks emms-cue
emms-mode-line-icon emms-browser sort emms-playlist-sort
emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time
emms-lyrics emms-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util url-parse auth-source eieio
byte-opt bytecomp byte-compile cl-extra cconv eieio-core url-vars
emms-streams emms-tag-editor emms-mark emms-mode-line emms-cache
emms-info-ogginfo emms-info-mp3info emms-info later-do
emms-playlist-mode emms-player-vlc emms-player-mplayer
emms-player-simple emms-source-playlist emms-source-file locate
emms-setup emms emms-compat compile navi-mode outshine outorg
org-contacts cl-seq org-capture gnus-art mm-uu mml2015 mm-view mml-smime
smime password-cache dig mailcap gnus-sum gnus-group gnus-undo
gnus-start gnus-cloud nnimap nnmail mail-source tls gnutls utf7 netrc
nnoo parse-time gnus-spec gnus-int gnus-range message cl-macs rfc822 mml
mml-sec epg mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047
rfc2045 ietf-drums gmm-utils mailheader gnus-win gnus gnus-ems nnheader
mail-utils mm-util help-fns help-mode mail-prsvr cl gv org-rmail org-mhe
org-irc org-info org-gnus gnus-util org-docview doc-view jka-compr
image-mode dired org-bibtex bibtex org-bbdb org-element avl-tree org-w3m
org-agenda org advice org-macro org-footnote org-pcomplete pcomplete
org-list org-faces org-entities noutline outline easy-mmode org-version
ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys
ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs
org-loaddefs format-spec find-func bbdb-anniv diary-lib diary-loaddefs
cal-menu calendar cal-loaddefs bbdb-com crm mailabbrev bbdb bbdb-site
timezone bbdb-loaddefs finder-inf tex-site info package epg-config
edmacro kmacro recentf tree-widget wid-edit easymenu battery time
saveplace wheatgrass-theme delsel paren savehist elec-pair desktop
frameset cl-loaddefs pcase cl-lib cua-base cus-start cus-load time-date
mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel x-win term/common-win x-dnd 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 inotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty make-network-process emacs)

Memory information:
((conses 16 737755 158829)
 (symbols 48 99250 0)
 (miscs 40 3798 5017)
 (strings 32 194862 34321)
 (string-bytes 1 7450435)
 (vectors 16 62031)
 (vector-slots 8 1886442 240636)
 (floats 8 821 744)
 (intervals 56 50929 603)
 (buffers 976 98)
 (heap 1024 123073 11280))