Subject: 23.0.60; C-c in Rmail re-encodes quoted-printable parts

From: Eli Zaretskii <[email-masked]>
Date: Sat, 24 Jan 2009 13:57:54 +0200

In an Rmail buffer that holds a multi-part message with at least one
of the parts encoded in quoted-printable:

 Type `e', then make a region around the body of the part that is
 encoded in quoted-printable, and type:

   M-: (mail-unquote-printable-region (mark) (point) nil nil t) RET

 The marked part is decoded as expected.  Now type `C-c', and watch
 the Context-Type header be quoted-printable (e.g., "charset=utf-8"
 becomes "charset=3Dutf-8").  Other `=' characters elsewhere in the
 body of the partial message also become encoded in quoted-printable.

There are 2 bugs here: (1) Rmail should not re-encode the text in any
way, and (2) it should never touch the headers.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
If you would like to further debug the crash, please read the file
d:/gnu/emacs/etc/DEBUG for instructions.

In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2009-01-24 on HOME-C4E4A596F7
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4)'

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

Major mode: RMAIL

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

Recent input:
<help-echo> <help-echo> <down-mouse-1> <help-echo> 
<drag-mouse-1> C-x 4 b <up> <M-right> <right> <M-right> 
- <tab> <return> <help-echo> <down-mouse-1> <help-echo> 
<mouse-movement> <drag-mouse-1> C-x o p <next> <prior> 
C-x C-s <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <up> <up> <up> <next> <prior> <next> <next> 
<next> <next> <next> <next> <next> <next> <prior> <prior> 
<prior> <prior> <prior> <prior> <prior> <prior> e <up> 
<up> <up> <up> <up> <up> <up> <up> <up> <up> <up> <up> 
<up> <up> <help-echo> C-SPC <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> M-: ( m a i l - u n q u o t e 
- p r i n t a b l e - r e g i o n SPC ( m a r k ) S-SPC 
( p o i n t ) S-SPC n i l SPC n i l SPC t ) <return> 
C-c C-c M-x r m a i l - r e d e <tab> c <tab> <tab> 
<C-left> <C-left> <delete> p C-e <tab> C-g <help-echo> 
<help-echo> <help-echo> C-x C-s p p n n M-: <up> C-g 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> C-x k <return> C-u M-x <up> <up> <up> <return> 
<up> <up> <up> <return> M-x <up> <up> <up> <return> 
C-x o <help-echo> <down-mouse-1> <help-echo> <drag-mouse-1> 
<help-echo> <help-echo> p p n n n p p p n n n p <down> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <down> <down> <down> e C-SPC <next> 
<down> <down> <down> <down> <down> <down> <down> <down> 
<down> <down> <down> <up> <down> C-x C-x C-x C-x M-: 
( <up> <return> C-x C-x C-x C-x C-c C-c M-x <up> <up> 
<up> <up> <down> <return>

Recent messages:
Mark set
t
Quit
Wrote d:/usr/eli/data/mail.in
Quit
Counting messages...done
Computing summary lines...done
No following nondeleted message
Editing: Type C-c C-c to return to Rmail, C-c C-] to abort
Mark set
t