Require that AndroidLogWriter is a subclass of LogWriter

This commit is contained in:
str4d
2016-05-29 05:02:47 +00:00
parent e969213451
commit efcf294670

View File

@ -167,9 +167,11 @@ public class LogManager implements Flushable {
return;
if (SystemVersion.isAndroid()) {
try {
Class<?> clazz = Class.forName("net.i2p.util.AndroidLogWriter");
Constructor<?> ctor = clazz.getDeclaredConstructor(LogManager.class);
_writer = (LogWriter) ctor.newInstance(this);
Class<? extends LogWriter> clazz = Class.forName(
"net.i2p.util.AndroidLogWriter"
).asSubclass(LogWriter.class);
Constructor<? extends LogWriter> ctor = clazz.getDeclaredConstructor(LogManager.class);
_writer = ctor.newInstance(this);
} catch (ClassNotFoundException e) {
} catch (InstantiationException e) {
} catch (IllegalAccessException e) {