Skip to content

Commit 2b8c9a3

Browse files
committed
TIKA-3336 -- new zip bombs detect in 1.26-SNAPSHOT compared with 1.25 -- bug, don't advance twice per call to chars/whitespace
1 parent b1e8641 commit 2b8c9a3

File tree

1 file changed

+0
-4
lines changed

1 file changed

+0
-4
lines changed

tika-core/src/main/java/org/apache/tika/parser/RecursiveParserWrapper.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -488,12 +488,10 @@ public void endElement(String uri, String localName, String name) throws SAXExce
488488
@Override
489489
public void characters(char[] ch, int start, int length) throws SAXException {
490490
if (totalWriteLimit < 0) {
491-
advance(length);
492491
super.characters(ch, start, length);
493492
return;
494493
}
495494
int availableLength = Math.min(totalWriteLimit - totalChars, length);
496-
advance(availableLength);
497495
super.characters(ch, start, availableLength);
498496
if (availableLength < length) {
499497
throw new WriteLimitReached();
@@ -503,12 +501,10 @@ public void characters(char[] ch, int start, int length) throws SAXException {
503501
@Override
504502
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException {
505503
if (totalWriteLimit < 0) {
506-
advance(length);
507504
super.ignorableWhitespace(ch, start, length);
508505
return;
509506
}
510507
int availableLength = Math.min(totalWriteLimit - totalChars, length);
511-
advance(availableLength);
512508
super.ignorableWhitespace(ch, start, availableLength);
513509
if (availableLength < length) {
514510
throw new WriteLimitReached();

0 commit comments

Comments
 (0)