1
Vote

MessageStructureProcessor.ProcessResult() throws an exception when processing a "* 3 FETCH (FLAGS (\\Seen))" result.

description

I occasionally receive an ArgumentOutOfRangeException in InterIMAP.Common.Processors.MessageStructureProcessor.ProcessResult() when using a FullMessageRequest instance to download a message. I am using Revision 43840.
 
The exception occurs when looping over CmdResult.Results. The exception occurs when when the message being downloaded includes the following entry in the CmdResult.Results property:
 
 "* 3 FETCH (FLAGS (\\Seen))"
 
The ProcessResult() method assumes that all CmdResult.Results entries will contain the text "BODYSTRUCTURE" which in this case it doesn't. I'm not yet familiar enough with the code, or the IMAP protocol, to write my own patch -- I'm not sure what the correct way to handle this situation is.

comments