After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 766713 - Remove attachment does not work on multiple level message structure
Remove attachment does not work on multiple level message structure
Status: RESOLVED FIXED
Product: evolution
Classification: Applications
Component: Mailer
3.18.x (obsolete)
Other Linux
: Normal normal
: ---
Assigned To: evolution-mail-maintainers
Evolution QA team
Depends on:
Blocks:
 
 
Reported: 2016-05-20 12:54 UTC by Andrea Vai
Modified: 2016-05-25 21:04 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Andrea Vai 2016-05-20 12:54:31 UTC
If I try to remove an attachment from one certain message (and also others), nothing seems to happen, and the attachment is not removed.

As pointed out by Milan on the evo list [1]:

The message has a structure like

   multipart/alternative
      text/plain
      multipart/mixed
         text/html
         application/pdf
         text/html

The attachment removal in the evolution searches only on the first
level, it doesn't check content of the multipart/mixed, thus it doesn't
notice the application/pdf part.

It should be able to search on the next level(s), too, and thus remove attachments from messages of this type.
Comment 2 Milan Crha 2016-05-25 21:04:00 UTC
Thanks for a bug report. I fixed it with the below commits. Ther eis still an "issue" of detecting that the message has an attachment, as in your case the file is marked with "inline" Content-Disposition, where these are skipped intentionally, because such are usually images, thus something what can be shown in the HTML content inline and doesn't mean to be a real attachment. That's only about the attachment icon in the message list (and an availability of the "Remove Attachments" function, the actual removal removes those inline-s regardless.

Created commit 28ba0cb in evo master (3.21.3+)
Created commit 0c65eb6 in evo gnome-3-20 (3.20.3+)