Author: toad
Date: 2008-11-21 19:55:31 +0000 (Fri, 21 Nov 2008)
New Revision: 23791

Modified:
   trunk/freenet/src/freenet/client/FECCodec.java
Log:
Fix another FEC bug (recently introduced): don't try to read from the last 
block.


Modified: trunk/freenet/src/freenet/client/FECCodec.java
===================================================================
--- trunk/freenet/src/freenet/client/FECCodec.java      2008-11-21 19:45:17 UTC 
(rev 23790)
+++ trunk/freenet/src/freenet/client/FECCodec.java      2008-11-21 19:55:31 UTC 
(rev 23791)
@@ -140,18 +140,19 @@
                                                        buckets[i] = 
bf.makeBucket(blockLength);
                                                        writers[i] = 
buckets[i].getOutputStream();
                                                        if(logMINOR)
-                                                               
Logger.minor(this, "writers[" + i + "] != null");
+                                                               
Logger.minor(this, "writers[" + i + "] != null (NOT PADDING)");
                                                        readers[i] = null;
                                                        numberToDecode++;
                                                }
                                                else
                                                        throw new 
IllegalArgumentException("Too big: " + sz + " bigger than " + blockLength);
+                                       } else {
+                                               if(logMINOR)
+                                                       Logger.minor(this, 
"writers[" + i + "] = null (already filled)");
+                                               writers[i] = null;
+                                               readers[i] = new 
DataInputStream(buckets[i].getInputStream());
+                                               packetIndexes[idx++] = i;
                                        }
-                                       if(logMINOR)
-                                               Logger.minor(this, "writers[" + 
i + "] = null (already filled)");
-                                       writers[i] = null;
-                                       readers[i] = new 
DataInputStream(buckets[i].getInputStream());
-                                       packetIndexes[idx++] = i;
                                }
                        }
                        for(int i = 0; i < checkBlockStatus.length; i++) {
@@ -437,7 +438,7 @@
                                                        }
                                                }
                                        } catch (IOException e) {
-                                               Logger.error(this, "BOH! ioe:" 
+ e.getMessage());
+                                               Logger.error(this, "BOH! ioe:" 
+ e.getMessage(), e);
                                        }
 
                                        // Call the callback

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to