jakartaee / mail-api

Jakarta Mail Specification project
https://jakartaee.github.io/mail-api
Other
245 stars 101 forks source link

setPeek(true) is not honored when getting an inner imap message part #666

Open gbulfon opened 1 year ago

gbulfon commented 1 year ago

Describe the bug While setPeek(true) works fine on an IMAPMessage when getting content data such as text parts or attachment parts, when trying to get the content of an inner message part (an attached eml) the message changes to the seen state. This has been verified to happen both on a Cyrus and Dovecot imap server.

To Reproduce Steps to reproduce the behavior:

  1. get an unseen IMAPMessage instance from an IMAPFolder as m.
  2. m.setPeek(true)
  3. get the eml attachment part from the message as p.
  4. (Message)p.getContent() and use it

Expected behavior The original message should be still in the unseen state

Mail server:

Additional context We're using jakarta-mail 2.0.0