Subject: bug#35495: 27.0.50; Untarring an archive with a keyring.gpg inside

From: Federico Tedin <[email-masked]>
Date: Wed, 08 May 2019 19:26:13 -0300

Stefan Monnier <[email-masked]> writes:

> Package: Emacs
> Version: 27.0.50
>
>
> When untarring a file whose contents include a GPG keyring named with
> a `.gpg` extension, `tar-untar-buffer` ends up trying to encrypt the
> keyring because the `write-region` call for this file gets handed to
> `epa-file-write-region`.
>
>
>         Stefan
>
>
>
> In GNU Emacs 27.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
>  of 2019-04-18 built on pastel
> Repository revision: 058df7a477bfd9798fc96332dd9a7adcd4a7c2b0
> Repository branch: work
> Windowing system distributor 'The X.Org Foundation', version 11.0.11902000
> System Description: Debian GNU/Linux 9 (stretch)
>
> Recent messages:
> user-error: No cross-reference here
> Warning: hide-sublevels is obsolete!
> Mark saved where search started [3 times]
> Making completion list...
> Warning: hide-sublevels is obsolete!
> Mark saved where search started
> Mark set
> Mark saved where search started
> <nil> <down-mouse-3> is undefined
> <nil> <mouse-3> is undefined

I've tried wrapping the call to `write-region` with `(let
(file-name-handler-alist) ...)` in tar-mode.el:548 and it fixes the
problem. On the other hand, it breaks TRAMP support. Would it be OK to
just remove the `epa-file-handler` from `file-name-handler-alist` while extracting?