Subject: bug#39307: 28.0.50; gnus does not display mime message correctly

From: Uwe Brauer <[email-masked]>
Date: Sun, 19 Jul 2020 17:33:00 +0200

>>> "LI" == Lars Ingebrigtsen <[email-masked]> writes:

   > Uwe Brauer <[email-masked]> writes:
   >> Now with my current setting GNU emacs from August displays this message
   >> without problems, the actual one does not. I am not really sure whom to
   >> blame.
   >> 
   >> So I either bisect this myself, or try to find out what in my setting
   >> leads to this mishaviour in recent compiled Emacsen. 

   > Did you make any progress here?

Yes I did. Didn't you see my mails:

,----
| I bisected the whole afternoon and found the culprits.
| 
| * The BUG
| First the following commit:
| 
| commit 4ce81556b7ad7f7f8c8bb07a7a935114bbe850d0
| Author: Lars Ingebrigtsen <[email-masked]>
| Date:   Mon Sep 23 18:23:22 2019 +0200
| 
|     Make mm-possibly-verify-or-decrypt pass decryption error
| 
|     * lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): If
|     there's an error, report the error back in a new part (bug#25649).
| 
| Introduced a bug, using any compiled emacs between this commit and
| commit 84ef1ea8b524f8998fc8674b99cf8069e38dce4f 
| 
| results in an emacs, which cannot decrypt smime messages!
| 
| 
| * The repair
| commit 84ef1ea8b524f8998fc8674b99cf8069e38dce4f (HEAD)
| Author: Lars Ingebrigtsen <[email-masked]>
| Date:   Thu Sep 26 16:24:29 2019 +0200
| 
|      Make it possible to view S/MIME verified emails
| 
|      * lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): When
|      dissecting the result, we need a header (bug#18393).
| 
|      * lisp/gnus/mm-view.el (mm-view-pkcs7-verify): Insert the verified
|      string.
| 
|      * lisp/gnus/smime.el (smime-verify-region): Return the verified
|      string.
| 
| With this commit, smime message can be decrypted, but they are not
| decoded well, at least not for my setting, and my setting worked well
| before commit 4ce81556b7ad7f7f8c8bb07a7a935114bbe850d0
| 
| So Lars, could you please try to repair this?
`----
and 

,----
| Hi Lars,
| 
| I just had an interchange of smime encrypted and signed messages with
| Jens Lechtenboerger.
| 
| He confirms that a message with latin-1 chars, which is encrypted and
| signed, is not correctly decrypted in the sense that the latin-1 chars
| are not correctly displayed and superflusios text is added.
| 
| The culprits are 
| (defun mm-possibly-verify-or-decrypt (parts ctl &optional from)
| 
| And the following commits
| 
|  commit 4ce81556b7ad7f7f8c8bb07a7a935114bbe850d0
|  Author: Lars Ingebrigtsen <[email-masked]>
|  Date:   Mon Sep 23 18:23:22 2019 +0200
| 
|      Make mm-possibly-verify-or-decrypt pass decryption error
| 
|      * lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): If
|      there's an error, report the error back in a new part (bug#25649).
| 
| Now message cannot be decrypted anymore
| 
| ** Git repaired
|  commit 84ef1ea8b524f8998fc8674b99cf8069e38dce4f (HEAD)
|  Author: Lars Ingebrigtsen <[email-masked]>
|  Date:   Thu Sep 26 16:24:29 2019 +0200
| 
|       Make it possible to view S/MIME verified emails
| 
|       * lisp/gnus/mm-decode.el (mm-possibly-verify-or-decrypt): When
|       dissecting the result, we need a header (bug#18393).
| 
|       * lisp/gnus/mm-view.el (mm-view-pkcs7-verify): Insert the verified
|       string.
| 
|       * lisp/gnus/smime.el (smime-verify-region): Return the verified
|       string.
| 
| Message can be decrypted, but latin-1 chars are not decoded.
| 
| If you want we can run some experiements, but you need to have a smime
| certificate installed.
| 
| 
| For me it is so annoying that I partially reverted these commits in the
| latest emacs master. Here is the diff (I would not call it a patch).
| 
| Regards
| 
| Uwe Brauer 
| 
| [2. text/x-diff; mm-decode-works-master.diff]...
| 
`----

But this diff might be outdated. Tell me if you want an updated one