Subject: bug#16715: 24.3.50; REGRESSION: `report-emacs-bug' replaces `=' by `=3D' and chops lines inserting `='

From: Drew Adams <[email-masked]>
Date: Mon, 10 Feb 2014 10:29:47 -0800 (PST)

I prepared a bug report, then hit C-c C-c.  Then in the new message
window for my mail client I selected the instruction telling me to
select it and paste the bug-report message I prepared.  Then I used C-v
to paste it.

The result was that the *Backtrace* was chopped into equal-length lines,
with `=3D' replacing character `=' everywhere and with `=' inserted at
each line chop.  Le voici:
----------------8<------------------------------------------

The problem is this code:

  (when (and (=3D 1 (length comps) (consp (car comps))))

There is a missing right paren after (length comps) etc.

Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p t)
  =3D(1 1 t)
  (and (=3D 1 (length comps) (consp (car comps))))
  (if (and (=3D 1 (length comps) (consp (car comps)))) (progn (setq comp (c=
ar comps))))
  (let* ((exts (mapcar (function (lambda (str) (propertize str (quote compl=
etion-try-word) t))) (quote (" " "-")))) (before (substring string 0 point)=
) (after (substring string point)) (comps (delete nil (mapcar (function (la=
mbda (ext) (completion-try-completion ... table predicate ... md))) exts)))=
) (if (and (=3D 1 (length comps) (consp (car comps)))) (progn (setq comp (c=
ar comps)))))
  (progn (let* ((exts (mapcar (function (lambda (str) (propertize str ... t=
))) (quote (" " "-")))) (before (substring string 0 point)) (after (substri=
ng string point)) (comps (delete nil (mapcar (function (lambda ... ...)) ex=
ts)))) (if (and (=3D 1 (length comps) (consp (car comps)))) (progn (setq co=
mp (car comps))))))
  (if (=3D (length string) (length (car comp))) (progn (let* ((exts (mapcar=
 (function (lambda ... ...)) (quote (" " "-")))) (before (substring string =
0 point)) (after (substring string point)) (comps (delete nil (mapcar (func=
tion ...) exts)))) (if (and (=3D 1 (length comps) (consp (car comps)))) (pr=
ogn (setq comp (car comps)))))))
  (if (not (consp comp)) comp (if (=3D (length string) (length (car comp)))=
 (progn (let* ((exts (mapcar (function ...) (quote ...))) (before (substrin=
g string 0 point)) (after (substring string point)) (comps (delete nil (map=
car ... exts)))) (if (and (=3D 1 (length comps) (consp ...))) (progn (setq =
comp (car comps))))))) (let* ((comppoint (cdr comp)) (completion (car comp)=
) (before (substring string 0 point)) (combined (concat before "\n" complet=
ion))) (if (string-match "\\(.+\\)\n.*?\\1" combined) (progn (let* ((prefix=
 (match-string 1 before)) (rem (substring combined ...)) (after (substring =
string point)) (suffix (if ... ...))) (if (and (or suffix ...) (string-matc=
h ... completion) (eq ... comppoint) (string-match "\\W" completion ...) (>=
 comppoint ...)) (progn (let ... ... ...)))))) (cons completion comppoint)))
  (let ((comp (completion-try-completion string table predicate point md)))=
 (if (not (consp comp)) comp (if (=3D (length string) (length (car comp))) =
(progn (let* ((exts (mapcar ... ...)) (before (substring string 0 point)) (=
after (substring string point)) (comps (delete nil ...))) (if (and (=3D 1 .=
.. ...)) (progn (setq comp ...)))))) (let* ((comppoint (cdr comp)) (complet=
ion (car comp)) (before (substring string 0 point)) (combined (concat befor=
e "\n" completion))) (if (string-match "\\(.+\\)\n.*?\\1" combined) (progn =
(let* ((prefix ...) (rem ...) (after ...) (suffix ...)) (if (and ... ... ..=
. ... ...) (progn ...))))) (cons completion comppoint))))
  completion--try-word-completion("apropos" [restart-case icicle-candidates=
-alist d:/Emacs-24\.3/src/ cookie-cache vhdl-template-attribute-hook DokCha=
mpa Gabriola Fetch\ Newsgroups major-mode-map icicle-looking-at-p m-c-table=
 icicle-universal-argument--mode icicle-incremental-completion-delay FrameM=
akerSmallFont Century\ Gothic icicle-imenu-face image-dired-associated-dire=
d-buffer icicle-bookmark-all-tags-other-window multi-isearch-end debugger--=
locals-visible-p method-after select\.el eieio-class-definition icicle-dir-=
prefix-wo-wildcards icicle-this-command-keys-prefix icicle-bookmark-with-ta=
gs-menu-map debugger--hide-locals Roman icicle-imenu-non-interactive-functi=
on-p icicle-ess-complete-filename ALTP delete-whitespace-rectangle-line i-n=
arrow-candidates open-rectangle-line icicle-color-hsv-lessp cs1 cs2 eieio-s=
et-defaults save-selected More\.\.\. icicle-cdr-lessp mach icicle-search-bo=
okmark-list-bookmark Palatino\ Linotype file-or-dir mct-cand minibuffer-dep=
th-setup bbdb-extract-address-components-func No\ references icicle-search-=
region-bookmark ...] #[...

In GNU Emacs 24.3.50.1 (i686-pc-mingw32)
 of 2014-02-06 on ODIEONE
Bzr revision: 116299 [email-masked]
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
 `configure --prefix=3D/c/Devel/emacs/binary --enable-checking=3Dyes,glyphs
 'CFLAGS=3D-O0 -g3' LDFLAGS=3D-Lc:/Devel/emacs/lib
 CPPFLAGS=3D-Ic:/Devel/emacs/include'

In GNU Emacs 24.3.50.1 (i686-pc-mingw32)
 of 2014-02-06 on ODIEONE
Bzr revision: 116299 [email-masked]
Windowing system distributor `Microsoft Corp.', version 6.1.7601
Configured using:
 `configure --prefix=/c/Devel/emacs/binary --enable-checking=yes,glyphs
 'CFLAGS=-O0 -g3' LDFLAGS=-Lc:/Devel/emacs/lib
 CPPFLAGS=-Ic:/Devel/emacs/include'