Author: toad
Date: 2006-01-23 14:26:08 +0000 (Mon, 23 Jan 2006)
New Revision: 7899

Modified:
   trunk/freenet/src/freenet/node/Version.java
   trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
   trunk/freenet/src/freenet/node/fcp/FCPConnectionInputHandler.java
Log:
371: Fix NPE caused by race in FCP.

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-01-21 21:18:26 UTC (rev 
7898)
+++ trunk/freenet/src/freenet/node/Version.java 2006-01-23 14:26:08 UTC (rev 
7899)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       public static final int buildNumber = 370;
+       public static final int buildNumber = 371;

        /** Oldest build of Fred we will talk to */
        public static final int lastGoodBuild = 369;

Modified: trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java        
2006-01-21 21:18:26 UTC (rev 7898)
+++ trunk/freenet/src/freenet/node/fcp/FCPConnectionHandler.java        
2006-01-23 14:26:08 UTC (rev 7899)
@@ -37,6 +37,7 @@
                HighLevelSimpleClient client = 
node.makeClient((short)0,(short)0);
                defaultFetchContext = client.getFetcherContext();
                defaultInsertContext = client.getInserterContext();
+               inputHandler.start();
        }

        public void close() {

Modified: trunk/freenet/src/freenet/node/fcp/FCPConnectionInputHandler.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/FCPConnectionInputHandler.java   
2006-01-21 21:18:26 UTC (rev 7898)
+++ trunk/freenet/src/freenet/node/fcp/FCPConnectionInputHandler.java   
2006-01-23 14:26:08 UTC (rev 7899)
@@ -11,13 +11,16 @@

        final FCPConnectionHandler handler;

-       public FCPConnectionInputHandler(FCPConnectionHandler handler) {
+       FCPConnectionInputHandler(FCPConnectionHandler handler) {
                this.handler = handler;
+       }
+
+       void start() {
                Thread t = new Thread(this, "FCP input handler for 
"+handler.sock.getRemoteSocketAddress()+":"+handler.sock.getPort());
                t.setDaemon(true);
                t.start();
        }
-
+       
        public void run() {
                try {
                        realRun();


Reply via email to