Author: toad
Date: 2006-11-28 00:59:34 +0000 (Tue, 28 Nov 2006)
New Revision: 11075
Modified:
trunk/freenet/src/freenet/node/FNPPacketMangler.java
Log:
Handle hopefully impossible bug better.
Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java 2006-11-27
22:30:47 UTC (rev 11074)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java 2006-11-28
00:59:34 UTC (rev 11075)
@@ -1364,9 +1364,13 @@
plaintext[ptr++] = 0;
System.arraycopy(buf, offset, plaintext, ptr, length);
+ ptr += length;
- if(ptr + length != plaintext.length) {
- Logger.error(this, "Inconsistent length: "+plaintext.length+"
buffer but "+(ptr+length)+" actual");
+ if(ptr != plaintext.length) {
+ Logger.error(this, "Inconsistent length: "+plaintext.length+"
buffer but "+(ptr)+" actual");
+ byte[] newBuf = new byte[ptr];
+ System.arraycopy(plaintext, 0, newBuf, 0, ptr);
+ plaintext = newBuf;
}
if(seqNumber != -1) {