* Console: Fix /peers table summary alignment

* I2CP:
   - Don't NPE when loglevel=warn
   - Don't enforce property length limits when inside router JVM
 * I2PSnark: Log uncaught error in ThreadedStarter to router log
 * I2PThread: Log uncaught error to wrapper log
This commit is contained in:
zzz
2013-07-21 14:04:27 +00:00
parent d709f46183
commit 1b42d99e66
7 changed files with 31 additions and 10 deletions

View File

@ -309,11 +309,14 @@ abstract class I2PSessionImpl implements I2PSession, I2CPMessageReader.I2CPMessa
continue;
}
String val = options.getProperty(key);
if ((key.length() > 255) || (val.length() > 255)) {
// not serializing (no limit) in router ctx
// fixme, bytes could still be over 255 (unlikely)
if ((!_context.isRouterContext()) &&
(key.length() > 255 || val.length() > 255)) {
if (_log.shouldLog(Log.WARN))
_log.warn(getPrefix() + "Not passing on property ["
_log.warn("Not passing on property ["
+ key
+ "] in the session configuration as the value is too long (max = 255): "
+ "] in the session config, key or value is too long (max = 255): "
+ val);
} else {
rv.setProperty(key, val);

View File

@ -92,8 +92,12 @@ public class I2PThread extends Thread {
t.printStackTrace();
}
****/
if (t instanceof OutOfMemoryError)
if (t instanceof OutOfMemoryError) {
fireOOM((OutOfMemoryError)t);
} else {
System.out.println ("Thread terminated unexpectedly: " + getName());
t.printStackTrace();
}
}
// This creates a new I2PAppContext after it was deleted
// in Router.finalShutdown() via RouterContext.killGlobalContext()