diff --git a/fine-itext-old/src/main/java/com/fr/third/com/lowagie/text/pdf/ByteBuffer.java b/fine-itext-old/src/main/java/com/fr/third/com/lowagie/text/pdf/ByteBuffer.java index 854ae0133..e71127490 100644 --- a/fine-itext-old/src/main/java/com/fr/third/com/lowagie/text/pdf/ByteBuffer.java +++ b/fine-itext-old/src/main/java/com/fr/third/com/lowagie/text/pdf/ByteBuffer.java @@ -189,6 +189,9 @@ public class ByteBuffer extends OutputStream { */ public ByteBuffer append_i(int b) { int newcount = count + 1; + if (newcount < 0) { + throw new OutOfMemoryError(); + } if (newcount > buf.length) { byte newbuf[] = new byte[Math.max(Math.min(buf.length, HALF_INTEGER) << 1, newcount)]; System.arraycopy(buf, 0, newbuf, 0, count); @@ -212,6 +215,9 @@ public class ByteBuffer extends OutputStream { ((off + len) > b.length) || ((off + len) < 0) || len == 0) return this; int newcount = count + len; + if (newcount < 0) { + throw new OutOfMemoryError(); + } if (newcount > buf.length) { byte newbuf[] = new byte[Math.max(Math.min(buf.length, HALF_INTEGER) << 1, newcount)]; System.arraycopy(buf, 0, newbuf, 0, count);