You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2013/06/17 16:01:43 UTC

svn commit: r1493764 - /uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java

Author: pkluegl
Date: Mon Jun 17 14:01:42 2013
New Revision: 1493764

URL: http://svn.apache.org/r1493764
Log:
UIMA-3002
- added hotfix

Modified:
    uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java

Modified: uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java
URL: http://svn.apache.org/viewvc/uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java?rev=1493764&r1=1493763&r2=1493764&view=diff
==============================================================================
--- uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java (original)
+++ uima/sandbox/ruta/trunk/ruta-core/src/main/java/org/apache/uima/ruta/rule/WildCardRuleElement.java Mon Jun 17 14:01:42 2013
@@ -151,6 +151,8 @@ public class WildCardRuleElement extends
       if (extendedMatch.matched()) {
         ComposedRuleElementMatch nextContainerMatch = getContainerMatchOfNextElement(
                 extendedContainerMatch, nextDepth);
+        // Hotfix for UIMA-3002
+        int applied = ruleApply.getApplied();
         if (endAnchor == null) {
           cre.startMatch(extendedMatch, ruleApply, nextContainerMatch, cre, stream, crowd);
         } else {
@@ -160,6 +162,11 @@ public class WildCardRuleElement extends
         List<RuleElementMatch> nextList = nextContainerMatch.getInnerMatches().get(cre);
         boolean matched = hasMatched(nextList);
         if (!matched) {
+          // Hotfix for UIMA-3002
+          if (ruleApply.getApplied() > applied) {
+            doneHere = true;
+          }
+          // end hotfix
           nextOne = stream.getAnchor(after, getNextPointer(!after, nextOne));
         } else {
           doneHere = true;