Messages fetched by UID don't have $messageNum as key #33
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
First thanks to everyone involved in this project!
About the problem:
I'm using this library alongside with https://github.com/ddeboer/imap, which uses the UID to identify messages. In
Roundcube\ImapClient::fetch()
the sequence-number (variable$id
) is used as the key in$result
, even when$is_uid
is set to true. InJavanile\Imap2\Message
depending on$flags
the$messageNum
-parameter could either be the sequence-number or the UID. Therefore some methods fail to access the result.What I've changed:
array_pop()
is used to retrieve the message from the array and should work with sequence-numbers and UID.If FT_UID is set,
$messages
will have theuid
as the key in the affected functions (no change was required to Roundcube).How I've tested it:
I fetched mails from Outlook365 via OAuth2 and by UID successfully with this change.
Possibly related:
#15
#18