Author: toad
Date: 2005-11-12 02:56:37 +0000 (Sat, 12 Nov 2005)
New Revision: 7537
Modified:
trunk/freenet/src/freenet/node/FNPPacketMangler.java
trunk/freenet/src/freenet/node/Version.java
trunk/freenet/src/freenet/support/DoublyLinkedListImpl.java
trunk/freenet/src/freenet/support/PromiscuousItemException.java
trunk/freenet/src/freenet/support/SimpleFieldSet.java
Log:
176:
Fix more bugs in the bug-paranoia. :)
Modified: trunk/freenet/src/freenet/node/FNPPacketMangler.java
===================================================================
--- trunk/freenet/src/freenet/node/FNPPacketMangler.java 2005-11-12
02:39:13 UTC (rev 7536)
+++ trunk/freenet/src/freenet/node/FNPPacketMangler.java 2005-11-12
02:56:37 UTC (rev 7537)
@@ -856,7 +856,7 @@
pn.requeueMessageItems(messages, 0, messages.length, false);
return;
} catch (Throwable e) {
- Logger.error(this, "Caught "+e+" while sending messages,
requeueing");
+ Logger.error(this, "Caught "+e+" while sending messages,
requeueing", e);
// Requeue
pn.requeueMessageItems(messages, 0, messages.length, false);
return;
@@ -893,7 +893,7 @@
pn.requeueMessageItems(messages, lastIndex,
messages.length - lastIndex, false);
return;
} catch (Throwable e) {
- Logger.error(this, "Caught "+e+" while sending
messages, requeueing remaining messages");
+ Logger.error(this, "Caught "+e+" while sending
messages, requeueing remaining messages", e);
// Requeue
pn.requeueMessageItems(messages, lastIndex,
messages.length - lastIndex, false);
return;
Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2005-11-12 02:39:13 UTC (rev
7536)
+++ trunk/freenet/src/freenet/node/Version.java 2005-11-12 02:56:37 UTC (rev
7537)
@@ -20,10 +20,10 @@
public static final String protocolVersion = "1.0";
/** The build number of the current revision */
- public static final int buildNumber = 175;
+ public static final int buildNumber = 176;
/** Oldest build of Fred we will talk to */
- public static final int lastGoodBuild = 175;
+ public static final int lastGoodBuild = 176;
/** The highest reported build of fred */
public static int highestSeenBuild = buildNumber;
Modified: trunk/freenet/src/freenet/support/DoublyLinkedListImpl.java
===================================================================
--- trunk/freenet/src/freenet/support/DoublyLinkedListImpl.java 2005-11-12
02:39:13 UTC (rev 7536)
+++ trunk/freenet/src/freenet/support/DoublyLinkedListImpl.java 2005-11-12
02:56:37 UTC (rev 7537)
@@ -25,12 +25,16 @@
public DoublyLinkedListImpl() {
_headptr = new Item();
_tailptr = new Item();
+ _headptr.setParent(this);
+ _tailptr.setParent(this);
clear();
}
protected DoublyLinkedListImpl(Item _h, Item _t, int size) {
_headptr = _h;
_tailptr = _t;
+ _headptr.setParent(this);
+ _tailptr.setParent(this);
this.size = size;
}
@@ -139,6 +143,7 @@
DoublyLinkedList newlist = new DoublyLinkedListImpl(_headptr,
newtailptr, n);
_headptr = newheadptr;
+ _headptr.setParent(this);
size -= n;
return newlist;
@@ -218,7 +223,7 @@
*/
public DoublyLinkedList.Item remove(DoublyLinkedList.Item i) {
if (i.getParent() != this)
- throw new PromiscuousItemException(i);
+ throw new PromiscuousItemException(i, i.getParent());
DoublyLinkedList.Item next = i.getNext(), prev = i.getPrev();
if (next == null || prev == null) return null; // not in the list
prev.setNext(next);
@@ -235,9 +240,9 @@
*/
public void insertPrev(DoublyLinkedList.Item i, DoublyLinkedList.Item j) {
if (i.getParent() != this)
- throw new PromiscuousItemException(i);
+ throw new PromiscuousItemException(i, i.getParent());
if (j.getParent() != null)
- throw new PromiscuousItemException(j);
+ throw new PromiscuousItemException(j, i.getParent());
if (j.getNext() != null || j.getPrev() != null)
throw new PromiscuousItemException(j);
DoublyLinkedList.Item prev = i.getPrev();
@@ -247,6 +252,7 @@
j.setPrev(prev);
i.setPrev(j);
j.setNext(i);
+ j.setParent(this);
++size;
}
@@ -263,9 +269,9 @@
*/
public void insertNext(DoublyLinkedList.Item i, DoublyLinkedList.Item j) {
if (i.getParent() != this)
- throw new PromiscuousItemException(i);
+ throw new PromiscuousItemException(i, i.getParent());
if (j.getParent() != null)
- throw new PromiscuousItemException(j);
+ throw new PromiscuousItemException(j, i.getParent());
if (j.getNext() != null || j.getPrev() != null)
throw new PromiscuousItemException(j);
DoublyLinkedList.Item next = i.getNext();
@@ -275,6 +281,7 @@
j.setNext(next);
i.setNext(j);
j.setPrev(i);
+ j.setParent(this);
++size;
}
Modified: trunk/freenet/src/freenet/support/PromiscuousItemException.java
===================================================================
--- trunk/freenet/src/freenet/support/PromiscuousItemException.java
2005-11-12 02:39:13 UTC (rev 7536)
+++ trunk/freenet/src/freenet/support/PromiscuousItemException.java
2005-11-12 02:56:37 UTC (rev 7537)
@@ -1,5 +1,7 @@
package freenet.support;
+import freenet.support.DoublyLinkedList.Item;
+
/**
* Indicates an attempt to link a DoublyLinkedList.Item into
* two or more DoublyLinkedList's simultaneously (or twice
@@ -16,4 +18,8 @@
PromiscuousItemException(DoublyLinkedList.Item item) {
super(item.toString());
}
+
+ public PromiscuousItemException(Item item, DoublyLinkedList parent) {
+ super(item.toString()+":"+parent);
+ }
}
Modified: trunk/freenet/src/freenet/support/SimpleFieldSet.java
===================================================================
--- trunk/freenet/src/freenet/support/SimpleFieldSet.java 2005-11-12
02:39:13 UTC (rev 7536)
+++ trunk/freenet/src/freenet/support/SimpleFieldSet.java 2005-11-12
02:56:37 UTC (rev 7537)
@@ -105,6 +105,6 @@
} catch (IOException e) {
Logger.error(this, "WTF?!: "+e+" in toString()!", e);
}
- return super.toString()+"\n\n"+sw.toString();
+ return sw.toString();
}
}