diff --git a/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java b/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java
index 3e612d166c8f37de7a8f92d183348965da498b9c..15d32cf0b812d3b2d59583290067824b611a92a9 100644
--- a/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java
+++ b/apps/routerconsole/java/src/net/i2p/router/update/ConsoleUpdateManager.java
@@ -558,6 +558,11 @@ public class ConsoleUpdateManager implements UpdateManager {
      *  Call once for each type/method pair.
      */
     public void register(Updater updater, UpdateType type, UpdateMethod method, int priority) {
+        if ((type == ROUTER_SIGNED || type == ROUTER_UNSIGNED) && NewsHelper.dontInstall(_context)) {
+            if (_log.shouldLog(Log.WARN))
+                _log.warn("Ignoring registration for " + type + ", router updates disabled");
+            return;
+        }
         // DEBUG slow start for snark updates
         // For 0.9.4 update, only for dev builds
         // For 0.9.5 update, only for dev builds and 1% more
diff --git a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java
index 162290e9472e3dfb63f73b32df3020a951ea09cd..de5824bd363eb919df1080d41815b7358c5b4d1e 100644
--- a/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java
+++ b/apps/routerconsole/java/src/net/i2p/router/web/NewsHelper.java
@@ -230,10 +230,12 @@ public class NewsHelper extends ContentHelper {
      *  @since 0.9.4 moved from NewsFetcher
      */
     public static boolean dontInstall(RouterContext ctx) {
+        boolean disabled = ctx.getBooleanProperty(ConfigUpdateHandler.PROP_UPDATE_DISABLED);
+        if (disabled)
+            return true;
         File test = new File(ctx.getBaseDir(), "history.txt");
         boolean readonly = ((test.exists() && !test.canWrite()) || (!ctx.getBaseDir().canWrite()));
-        boolean disabled = ctx.getBooleanProperty(ConfigUpdateHandler.PROP_UPDATE_DISABLED);
-        return readonly || disabled;
+        return readonly;
     }
 
     /**
diff --git a/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java b/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java
index 199cf5e4e3bec88e52217a581c6641f0d7b954e6..c025fd7e32a00cc4e6011e5f82766aa508823046 100644
--- a/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java
+++ b/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java
@@ -55,7 +55,7 @@ public class StatSummarizer implements Runnable {
     private Thread _thread;
     
     public StatSummarizer() {
-        _context = RouterContext.listContexts().get(0); // fuck it, only summarize one per jvm
+        _context = RouterContext.listContexts().get(0); // only summarize one per jvm
         _log = _context.logManager().getLog(getClass());
         _listeners = new CopyOnWriteArrayList();
         _instance = this;