Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mu4e bug] Attachments that contain a comma (,) in the name cannot be saved #2785

Open
3 tasks done
ArneBab opened this issue Nov 11, 2024 · 1 comment
Open
3 tasks done
Labels
bug mu4e specific for mu4e

Comments

@ArneBab
Copy link

ArneBab commented Nov 11, 2024

Describe the bug

I received an email with an attachment whose name contains a comma (,). When trying to save the attachment, I get an error.

How to Reproduce

  • create a file with comma, i.e. /tmp/foo,bar.txt
  • send an email to myself with the file as attachment (not inline)
  • press e somewhere in the message text (mu4e-view-save-attachments) ⇒ see error
  • try again after setting M-x toggle-debug-on-error

There’s a workaround: use M-x gnus-mime-save-part

backtrace

Debugger entered--Lisp error: (wrong-type-argument char-or-string-p nil)
  mm-insert-part(nil)
  mm-save-part-to-file(nil "/(1)nil")
  #f(compiled-function (fname) #<bytecode -0x1bec29cfd65bb31e>)("foo")
  mapc(#f(compiled-function (fname) #<bytecode -0x1bec29cfd65bb31e>) ("foo" "bar.txt"))
  seq-do(#f(compiled-function (fname) #<bytecode -0x1bec29cfd65bb31e>) ("foo" "bar.txt"))
  mu4e-view-save-attachments(nil)
  funcall-interactively(mu4e-view-save-attachments nil)
  #<subr call-interactively>(mu4e-view-save-attachments nil nil)
  apply(#<subr call-interactively> mu4e-view-save-attachments (nil nil))
  (let ((ido-cr+-current-command command)) (apply orig-fun command args))
  call-interactively@ido-cr+-record-current-command(#<subr call-interactively> mu4e-view-save-attachments nil nil)
  apply(call-interactively@ido-cr+-record-current-command #<subr call-interactively> (mu4e-view-save-attachments nil nil))
  call-interactively(mu4e-view-save-attachments nil nil)
  command-execute(mu4e-view-save-attachments)

raw message:

From: a@example.com
To: a@example.com
Subject: file with comma
BCC: 
Date: Mon, 11 Nov 2024
Message-ID: <87r07idr6s.fsf@web.de>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="==-=-=";
	micalg=pgp-sha256; protocol="application/pgp-signature"

--==-=-=
Content-Type: multipart/mixed; boundary="=-=-="

--=-=-=
Content-Type: text/plain
Content-Disposition: attachment; filename="foo,bar.txt"

file with comma

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable


=2D-=20
Unpolitisch sein
hei=C3=9Ft politisch sein,
ohne es zu merken.
draketo.de

--=-=-=--

--==-=-=
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmcx1hwQHGFybmVfYmFi
QHdlYi5kZQAKCRAT741FJAPD61IXD/9TyX99HkXONFgi30grRNqQD37/aNmINLsX
TWgKHQUL7MKOBsVFi+PiysgSdYb6iRfWak9k18vM6bvOIGJ62BFH3BPWrAuEv3lP
v9tMRzFIiH8fUBvHUqYyGTYTUr96dpnx8Z2BoQ0ZVvbe71vBqlK8kiT889xV0pZA
tnhJ7bIcFMjCjFtGIW1keIjMuVFhi/Z5bfzES+ndqzsUYz6kPFF26fZmr84pwUOS
HHmDqJ9uXD2ZlIrhv6gsE1KgnzsYY4Wgrd8x/Rbej3XZC/liekr0vAP0YySHFkyQ
dHUvsZabtqn+9e8v2GzFNQ5K5BI3JY8IuMmWxB99Mnuh93XgxILdF1CSCOiYzlVs
XnM0SQuqj0XYhB4yb07QMWr3b2rS6daei1ivAhZpjjP1D1GEFUw5iu7zrClQO0N7
HY91fc77JNVf6YMCBVcnjTGTAILE4u9ox7k2I2pe3jgrvU5fWhIiX88M8voYQNSF
XiMGadkKubXxf5l96rfE4pGFU294O0/JgVAtgF2o8J2cCdwPV5PZNhAd/r7Kuj1W
aUfOHAs9v+UlKVVK01PI6BDNWrY92t9dSFS5mYzoc9TG8MheO+eadedjceiPg+aW
1hqm4+SQRqbZNZk1n7bjxHCJcwNN62w6H7oHGHwAh/ZX+PJ8S7yq03PdHVgi/cIV
Xq9hh4q+bYjEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmcx1hwQHGFy
bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSPgGA/9oP4uW1ZUueP+RAkjWXjfIdZ0V
eBrTXkkBigys+wuj6+PkY36zg6WIzcEqtkei/zwq+/TOSRZwdchgke4aYYg2S+/6
g5yOv1qOspYUX0Z+tdaqeOO8BYLusdASM2qOP5IUBDdtN+p6CmrqhKMBXto7iDdl
3Ec5HZrsIVDVIl5qQg==
=+/YS
-----END PGP SIGNATURE-----
--==-=-=--

Environment

Please describe the versions of OS, Emacs, mu/mu4e etc. you are using.

GNU Emacs 30.0.91 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.41, cairo version 1.18.0)

Checklist

  • you are running an 1.12.6 release
  • you can reproduce the problem without 3rd party extensions (including Doom/Evil, various extensions etc.)
  • you have read all of the above

Please make sure you all items in the checklist are set/met before filing the ticket.

Thank you!

@ArneBab ArneBab added bug mu4e specific for mu4e new labels Nov 11, 2024
@djcb
Copy link
Owner

djcb commented Nov 11, 2024

I think this is due to a limitation in completing-read-multiple, see #2768. If you have many such attachments, it may be worth updating crm-separator.

The error backtrace shouldn't happen though, that's fixed in 1.12.7.

@djcb djcb removed the new label Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug mu4e specific for mu4e
Projects
None yet
Development

No branches or pull requests

2 participants