[ https://issues.apache.org/jira/browse/JAMES-3709?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17482581#comment-17482581 ]
Karsten Otto edited comment on JAMES-3709 at 1/26/22, 3:48 PM: --------------------------------------------------------------- I agree about null checks, classic Java would be to throw e.g. NoSuchElementException or simply IOException. By the way MessageMetaDataUtils.getMetaData(...) also returns null, should fix it too. I will check what code impact such a change would have. Edit: I see the other handlers use IndexOutOfBoundsException, might as well use that then. was (Author: kotto): I agree about null checks, classic Java would be to throw e.g. NoSuchElementException or simply IOException. By the way MessageMetaDataUtils.getMetaData(...) also returns null, should fix it too. I will check what code impact such a change would have. > Missing null check in POP3 TopCmdHandler > ---------------------------------------- > > Key: JAMES-3709 > URL: https://issues.apache.org/jira/browse/JAMES-3709 > Project: James Server > Issue Type: Bug > Components: protocols > Affects Versions: master > Reporter: Karsten Otto > Priority: Major > Attachments: error.txt > > Time Spent: 1h 10m > Remaining Estimate: 0h > > TopCmdHandler is missing a null check when retrieving the message content, > i.e. the InputStream can be null, which results in an NPE down the line. > Admittedly this is a rare case, I only observed this during heavy load > testing. > On closer inspection it turns out that TopCmdHandler duplicates a major > portion of code from RetrCmdHandler, but with subtle differences such as the > null check mentioned above. > I propose to refactor the two classes to make them share the code, and > provide unit tests for all possible error/success cases. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org