Author: nextgens
Date: 2006-06-18 15:16:21 +0000 (Sun, 18 Jun 2006)
New Revision: 9297

Modified:
   trunk/freenet/src/freenet/node/updater/AutoUpdateAllowedCallback.java
   trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java
Log:
fixes a npe

   1.
      Jun 18, 2006 15:07:25:688 (freenet.clients.http.ConfigToadlet, 
SimpleToadletServer$SocketHandler, ERROR): Caught 
freenet.config.InvalidConfigValueException: Unable to enable the Node Updater 
java.lang.NullPointerException
   2.
      freenet.config.InvalidConfigValueException: Unable to enable the Node 
Updater java.lang.NullPointerException
   3.
              at 
freenet.node.updater.UpdaterEnabledCallback.set(UpdaterEnabledCallback.java:37)
   4.
              at freenet.config.BooleanOption.set(BooleanOption.java:35)
   5.
              at freenet.config.BooleanOption.setValue(BooleanOption.java:27)
   6.
              at 
freenet.clients.http.ConfigToadlet.handlePost(ConfigToadlet.java:72)
   7.
              at 
freenet.clients.http.ToadletContextImpl.handle(ToadletContextImpl.java:297)
   8.
              at 
freenet.clients.http.SimpleToadletServer$SocketHandler.run(SimpleToadletServer.java:330)
   9.
              at java.lang.Thread.run(Thread.java:595) 

Modified: trunk/freenet/src/freenet/node/updater/AutoUpdateAllowedCallback.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/AutoUpdateAllowedCallback.java       
2006-06-18 13:19:16 UTC (rev 9296)
+++ trunk/freenet/src/freenet/node/updater/AutoUpdateAllowedCallback.java       
2006-06-18 15:16:21 UTC (rev 9297)
@@ -22,7 +22,10 @@

        public void set(boolean val) throws InvalidConfigValueException {
                if(val == get()) return;
-               node.getNodeUpdater().setAutoupdateAllowed(val);
-               Logger.normal(this, "Node auto update is now allowed = "+val);
+               if(node.getNodeUpdater()!=null){
+                       node.getNodeUpdater().setAutoupdateAllowed(val);
+                       Logger.normal(this, "Node auto update is now allowed = 
"+val);
+               }else
+                       throw new InvalidConfigValueException("Nodeupdater: 
unable to set node-autoupdate allowed if the updater isn't started");
        }
 }
\ No newline at end of file

Modified: trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java
===================================================================
--- trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java  
2006-06-18 13:19:16 UTC (rev 9296)
+++ trunk/freenet/src/freenet/node/updater/UpdaterEnabledCallback.java  
2006-06-18 15:16:21 UTC (rev 9297)
@@ -26,11 +26,13 @@
        }

        public void set(boolean val) throws InvalidConfigValueException {
-               synchronized (node.nodeUpdater) {
+               synchronized (node) {
                        if(val == get()) return;
                        if(val){
                                try{
                                        SubConfig sc = 
nodeConfig.get("node.updater");
+                                       if(node.getNodeUpdater()!=null)
+                                               node.nodeUpdater.kill();
                                        node.nodeUpdater = new NodeUpdater(node 
, sc.getBoolean("autoupdate"), new FreenetURI(sc.getString("URI")), new 
FreenetURI(sc.getString("revocationURI")));
                                        Logger.normal(this, "Starting up the 
node updater");
                                }catch (Exception e){


Reply via email to