This is an automated email from the ASF dual-hosted git repository.

tallison pushed a commit to branch branch_1x
in repository https://gitbox.apache.org/repos/asf/tika.git

commit 2b8c9a3eba7007998cca6df6db973c2c4547d55e
Author: tallison <[email protected]>
AuthorDate: Tue Mar 23 14:41:27 2021 -0400

    TIKA-3336 -- new zip bombs detect in 1.26-SNAPSHOT compared with 1.25 -- 
bug, don't advance twice per call to chars/whitespace
---
 .../src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java  | 4 ----
 1 file changed, 4 deletions(-)

diff --git 
a/tika-core/src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java 
b/tika-core/src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java
index e7dee24..021fca3 100644
--- a/tika-core/src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java
+++ b/tika-core/src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java
@@ -488,12 +488,10 @@ public class RecursiveParserWrapper extends 
ParserDecorator {
         @Override
         public void characters(char[] ch, int start, int length) throws 
SAXException {
             if (totalWriteLimit < 0) {
-                advance(length);
                 super.characters(ch, start, length);
                 return;
             }
             int availableLength = Math.min(totalWriteLimit - totalChars, 
length);
-            advance(availableLength);
             super.characters(ch, start, availableLength);
             if (availableLength < length) {
                 throw new WriteLimitReached();
@@ -503,12 +501,10 @@ public class RecursiveParserWrapper extends 
ParserDecorator {
         @Override
         public void ignorableWhitespace(char[] ch, int start, int length) 
throws SAXException {
             if (totalWriteLimit < 0) {
-                advance(length);
                 super.ignorableWhitespace(ch, start, length);
                 return;
             }
             int availableLength = Math.min(totalWriteLimit - totalChars, 
length);
-            advance(availableLength);
             super.ignorableWhitespace(ch, start, availableLength);
             if (availableLength < length) {
                 throw new WriteLimitReached();

Reply via email to