dfs         2002/10/30 09:49:10

  Modified:    .        CHANGES build.properties
               src/java/org/apache/oro/text/awk AwkMatchResult.java
                        AwkMatcher.java
  Log:
  PR: 13522
  
  Fixed problem whereby an AwkMatchResult resulting from a match on an
  AwkStreamInput source (AwkMatcher.contains(AwkStreamInput, Pattern);)
  would contain offsets relative to the buffered input rather than to where
  the input stream was first read from (usually the beginning of the stream).
  
  Revision  Changes    Path
  1.31      +7 -2      jakarta-oro/CHANGES
  
  Index: CHANGES
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/CHANGES,v
  retrieving revision 1.30
  retrieving revision 1.31
  diff -u -r1.30 -r1.31
  --- CHANGES   14 Oct 2002 16:20:02 -0000      1.30
  +++ CHANGES   30 Oct 2002 17:49:10 -0000      1.31
  @@ -1,6 +1,11 @@
   $Id$
   
  -Version 2.0.7-dev0-2
  +Version 2.0.7-dev-2
  + o Fixed problem whereby an AwkMatchResult resulting from a match on an
  +   AwkStreamInput source (AwkMatcher.contains(AwkStreamInput, Pattern);)
  +   would contain offsets relative to the buffered input rather than to where
  +   the input stream was first read from (usually the beginning of the stream).
  +
    o Added support for negating modifiers.  For example (?-i)foo.  Note,
     we still do not support Perl 5.005+ group-local modifiers such as
     (?imsx-imsx:pattern).
  
  
  
  1.5       +2 -2      jakarta-oro/build.properties
  
  Index: build.properties
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/build.properties,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- build.properties  31 May 2002 03:17:42 -0000      1.4
  +++ build.properties  30 Oct 2002 17:49:10 -0000      1.5
  @@ -12,7 +12,7 @@
   # Name and version information
   name=Jakarta-ORO
   project=jakarta-oro
  -version=2.0.7-dev-1
  +version=2.0.7-dev-2
   
   # Name and version of the project
   project.name=${project}-${version}
  
  
  
  1.5       +10 -1     jakarta-oro/src/java/org/apache/oro/text/awk/AwkMatchResult.java
  
  Index: AwkMatchResult.java
  ===================================================================
  RCS file: 
/home/cvs/jakarta-oro/src/java/org/apache/oro/text/awk/AwkMatchResult.java,v
  retrieving revision 1.4
  retrieving revision 1.5
  diff -u -r1.4 -r1.5
  --- AwkMatchResult.java       20 May 2001 23:55:21 -0000      1.4
  +++ AwkMatchResult.java       30 Oct 2002 17:49:10 -0000      1.5
  @@ -114,6 +114,15 @@
   
   
     /**
  +   * Adjusts the relative offset where the match begins to an absolute
  +   * value.  Only used by AwkMatcher to adjust the offset for stream
  +   * matches.
  +   */
  +  void _incrementMatchBeginOffset(int streamOffset) {
  +    __matchBeginOffset+=streamOffset;
  +  }
  +
  +  /**
      * @return The length of the match.
      */
     public int length(){ return __length; }
  
  
  
  1.7       +9 -2      jakarta-oro/src/java/org/apache/oro/text/awk/AwkMatcher.java
  
  Index: AwkMatcher.java
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/src/java/org/apache/oro/text/awk/AwkMatcher.java,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- AwkMatcher.java   10 Jul 2001 12:39:18 -0000      1.6
  +++ AwkMatcher.java   30 Oct 2002 17:49:10 -0000      1.7
  @@ -621,7 +621,14 @@
       __beginOffset = 0;
       _search();
       input._currentOffset = __lastMatchedBufferOffset;
  -    return (__lastMatchResult != null);
  +
  +    if(__lastMatchResult != null) {
  +      // Adjust match begin offset to be relative to beginning of stream.
  +      __lastMatchResult._incrementMatchBeginOffset(input._bufferOffset);
  +      return true;
  +    }
  +
  +    return false;
     }
   
   
  
  
  

--
To unsubscribe, e-mail:   <mailto:oro-dev-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:oro-dev-help@;jakarta.apache.org>

Reply via email to