[ 
https://issues.apache.org/jira/browse/WICKET-6165?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15479075#comment-15479075
 ] 

ASF subversion and git services commented on WICKET-6165:
---------------------------------------------------------

Commit 2c8fd45c8f3287d39daf1413b582608620db0639 in wicket's branch 
refs/heads/stream-api-improvement from Pedro Henrique Oliveira dos Santos
[ https://git-wip-us.apache.org/repos/asf?p=wicket.git;h=2c8fd45 ]

WICKET-6165 addind and using MarkupStream#isCurrentIndexInsideTheStream instead 
of MarkupStream#hasMore


> Inconsistent behavior of Markupstream.hasMore vs. MarkupStream.next.
> --------------------------------------------------------------------
>
>                 Key: WICKET-6165
>                 URL: https://issues.apache.org/jira/browse/WICKET-6165
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 7.3.0
>            Reporter: Thorsten Schöning
>            Assignee: Pedro Santos
>            Priority: Minor
>         Attachments: HtmlHandler.java.patch, MarkupStream.java.patch, 
> MarkupStream.java.patch
>
>
> {CODE}
> hasMore: return currentIndex < markup.size();
> next:    if (++currentIndex < markup.size()) {...}
> me:      while (markupStream.hasMore()) {...}
> {CODE}
> I get a null element within the while loop which I wouldn't expect to get. 
> markup.size() is 73, currentIndex 72, so "hasMore" returns true, while "next" 
> returns null, because it already advanced the index during its check. 
> "hasMore" saying "yes" while "next" saying "no" seems inconsistent to me, 
> even though one can check the return value of "next" against "null".
> Shouldn't "next" use
> {CODE}
> if (currentIndex++ < markup.size()) {...}
> {CODE}
> to be in line with "hasMore"? Or more better directly call "hasMore" for the 
> check itself to have only one single consistent implementation of the check?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to