harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Ellison (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-4396) [classlib][regex] Matcher.hitEnd() returns invalid value if a match isn't found after find() method is called
Date Wed, 25 Jul 2007 15:56:31 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-4396?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12515326

Tim Ellison commented on HARMONY-4396:


The fix has been applied to the REGEX module at repo revision r559497.

I have not integrated your regression test because:
 - although you granted the ASF a license through the JIRA attachment tool, the source still
contains a copyright and "All rights reserved" comment and (in keeping with the ASF procedures
[1]) I need permission to remove the comments, or you should remove them, and
 - we need you to say that Danger Research Inc allow you to contribute their code to Harmony,
which happens via a short questionnaire you can find here [2].  Take a read and send it back
to me so we know where you are free to contribute

Thanks again for fixing this problem!

[1] http://www.apache.org/legal/src-headers.html#headers
[2] http://harmony.apache.org/auth_cont_quest.txt

> [classlib][regex] Matcher.hitEnd() returns invalid value if a match isn't found after
find() method is called
> -------------------------------------------------------------------------------------------------------------
>                 Key: HARMONY-4396
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4396
>             Project: Harmony
>          Issue Type: Bug
>          Components: Classlib
>         Environment: OS: Linux openSUSE 10.2, JDK 1.6
>            Reporter: Radu Marias
>            Assignee: Tim Ellison
>            Priority: Minor
>         Attachments: HitEndTest.java, Matcher.java
> If Matcher.find() is called and there's no match found, the Matcher.hitEnd() returns
false event thought when it's tried to get the index of the match that index is -1 (witch
means that a match isn't found).
> The problem is that matchResult.hitEnd isn't set to true when the index of found match
is -1.
> The fix is a little change to "private int findAt(int startIndex)" method to set matchResult.hitEnd
to true when a match isn't found.
> The source of changed method:
>     private int findAt(int startIndex) {
>         matchResult.reset();
>         matchResult.setMode(Matcher.MODE_FIND);
>         matchResult.setStartIndex(startIndex);
>         int foundIndex = start.find(startIndex, string, matchResult);
>         if (foundIndex == -1) {
>             matchResult.hitEnd = true;
>         }
>         return foundIndex;
>     }
> Attachments:
> HitEndTest.java: test case, testHitEndAfterFind() is the test it fails.
> Matcher.java: the fixed file.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message