Subject: bug#21766: 25.0.50; delete-trailing-whitespace sometimes deletes non-whitespace

From: Markus Triska <[email-masked]>
Date: Tue, 27 Oct 2015 00:07:10 +0100

Steps to reproduce:

1) wget http://www.metalevel.at/ei/fault1.html

2) emacs -Q fault1.html

3) M-x delete-trailing-whitespace RET

This removes several non-white-space characters, including the whole
line containing "and use it like" (line 83 in the original file),
yielding the following diff against the original file:

   http://www.metalevel.at/ei/fault1.patch

Subtle changes in different sections of the file cause different
behaviour of `delete-trailing-whitespace'. For example, if I remove the
initial paragraph (patch: http://www.metalevel.at/ei/fault12.patch) to
obtain the slightly altered file:

   http://www.metalevel.at/ei/fault2.html

Then the analogous steps, using fault2.html ($ emacs -Q fault2.html,
M-x delete-trailing-whitespace RET) work as expected, removing only
trailing whitespace characters and leading to the diff:

   http://www.metalevel.at/ei/fault2.patch

All steps work as expected in Emacs 24.5, removing only trailing
whitespace characters in all cases.

Thank you for looking into this!
Markus

In GNU Emacs 25.0.50.5 (x86_64-apple-darwin14.1.0, X toolkit, Xaw3d scroll bars)
 of 2015-10-04
Repository revision: acfb5cd0353406784f085ddb6edfb0d0587048c8
Windowing system distributor 'The X.Org Foundation', version 11.0.11502000
Configured using:
 'configure --without-ns CFLAGS=-I/opt/local/include
 LDFLAGS=-L/opt/local/lib'

Configured features:
XAW3D XPM JPEG TIFF GIF PNG IMAGEMAGICK GSETTINGS NOTIFY ACL GNUTLS
LIBXML2 FREETYPE XFT ZLIB TOOLKIT_SCROLL_BARS LUCID X11

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