Author: toad
Date: 2007-02-17 00:12:48 +0000 (Sat, 17 Feb 2007)
New Revision: 11825
Modified:
trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
Log:
Prevent ArithmeticException. (There may be a deeper problem?)
Modified: trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
2007-02-16 22:34:17 UTC (rev 11824)
+++ trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
2007-02-17 00:12:48 UTC (rev 11825)
@@ -219,16 +219,18 @@
activityList.addChild("li", "Total
Input:\u00a0" + SizeUtil.formatSize(total[1], true) + "\u00a0(" +
SizeUtil.formatSize(total_input_rate, true) + "ps)");
long[] rate = node.getNodeIOStats();
long delta = (rate[5] - rate[2]) / 1000;
- long output_rate = (rate[3] - rate[0])
/ delta;
- long input_rate = (rate[4] - rate[1]) /
delta;
- SubConfig nodeConfig =
node.config.get("node");
- int outputBandwidthLimit =
nodeConfig.getInt("outputBandwidthLimit");
- int inputBandwidthLimit =
nodeConfig.getInt("inputBandwidthLimit");
- if(inputBandwidthLimit == -1) {
- inputBandwidthLimit =
outputBandwidthLimit * 4;
+ if(delta > 0) {
+ long output_rate = (rate[3] -
rate[0]) / delta;
+ long input_rate = (rate[4] -
rate[1]) / delta;
+ SubConfig nodeConfig =
node.config.get("node");
+ int outputBandwidthLimit =
nodeConfig.getInt("outputBandwidthLimit");
+ int inputBandwidthLimit =
nodeConfig.getInt("inputBandwidthLimit");
+ if(inputBandwidthLimit == -1) {
+ inputBandwidthLimit =
outputBandwidthLimit * 4;
+ }
+ activityList.addChild("li",
"Output Rate:\u00a0" + SizeUtil.formatSize(output_rate, true) + "ps
(of\u00a0"+SizeUtil.formatSize(outputBandwidthLimit, true)+"ps)");
+ activityList.addChild("li",
"Input Rate:\u00a0" + SizeUtil.formatSize(input_rate, true) + "ps
(of\u00a0"+SizeUtil.formatSize(inputBandwidthLimit, true)+"ps)");
}
- activityList.addChild("li", "Output
Rate:\u00a0" + SizeUtil.formatSize(output_rate, true) + "ps
(of\u00a0"+SizeUtil.formatSize(outputBandwidthLimit, true)+"ps)");
- activityList.addChild("li", "Input
Rate:\u00a0" + SizeUtil.formatSize(input_rate, true) + "ps
(of\u00a0"+SizeUtil.formatSize(inputBandwidthLimit, true)+"ps)");
}
}