From bc7a963f5cab538da1be22795928e0271e6f3cd8 Mon Sep 17 00:00:00 2001 From: mkvore-commit Date: Sun, 10 May 2009 20:23:08 +0000 Subject: [PATCH] correct a null pointer exception check before it gets caught and logged as an error --- apps/sam/java/src/net/i2p/sam/SAMv3Handler.java | 8 ++++---- .../java/src/net/i2p/sam/SAMv3StreamSession.java | 14 ++++++++++---- .../net/i2p/client/streaming/MessageHandler.java | 4 ++-- 3 files changed, 16 insertions(+), 10 deletions(-) diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java b/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java index c4da74fa3..7a64d8441 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3Handler.java @@ -350,12 +350,12 @@ public class SAMv3Handler extends SAMv1Handler _log.debug("Stop request found"); break; } - - msg = DataHelper.readLine(in).trim(); - if (msg == null) { - _log.debug("Connection closed by client"); + String line = DataHelper.readLine(in) ; + if (line==null) { + _log.debug("Connection closed by client (line read : null)"); break; } + msg = line.trim(); if (_log.shouldLog(Log.DEBUG)) { _log.debug("New message received: [" + msg + "]"); diff --git a/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java b/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java index 06a322ee8..5d7e7e63d 100644 --- a/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java +++ b/apps/sam/java/src/net/i2p/sam/SAMv3StreamSession.java @@ -264,12 +264,12 @@ public class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handle public void run() { - while (session.socketServer!=null) { + while (session.getSocketServer()!=null) { // wait and accept a connection from I2P side I2PSocket i2ps = null ; try { - i2ps = session.socketServer.accept(); + i2ps = session.getSocketServer().accept(); } catch (Exception e) {} if (i2ps==null) { @@ -361,8 +361,14 @@ public class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handle } } + public I2PServerSocket getSocketServer() + { + synchronized ( this.socketServerLock ) { + return this.socketServer ; + } + } /** - * + * stop Forwarding Incoming connection coming from I2P * @param props * @throws SAMException * @throws InterruptedIOException @@ -382,6 +388,7 @@ public class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handle } server = this.socketServer ; this.socketServer = null ; + _log.debug("nulling socketServer in stopForwardingIncoming. Object " + this ); } try { server.close(); @@ -400,5 +407,4 @@ public class SAMv3StreamSession extends SAMStreamSession implements SAMv3Handle { throw new DataFormatException(null); } - } diff --git a/apps/streaming/java/src/net/i2p/client/streaming/MessageHandler.java b/apps/streaming/java/src/net/i2p/client/streaming/MessageHandler.java index 75adf6e59..1ff65248d 100644 --- a/apps/streaming/java/src/net/i2p/client/streaming/MessageHandler.java +++ b/apps/streaming/java/src/net/i2p/client/streaming/MessageHandler.java @@ -73,8 +73,8 @@ public class MessageHandler implements I2PSessionListener { * @param session that has been terminated */ public void disconnected(I2PSession session) { - if (_log.shouldLog(Log.ERROR)) - _log.error("I2PSession disconnected"); + if (_log.shouldLog(Log.WARN)) + _log.warn("I2PSession disconnected"); _manager.disconnectAllHard(); List listeners = null;