Author: toad
Date: 2008-04-19 16:21:23 +0000 (Sat, 19 Apr 2008)
New Revision: 19425

Modified:
   trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java
Log:
Prevent race condition if autoRegister = true

Modified: trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java
===================================================================
--- trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java       
2008-04-19 16:20:33 UTC (rev 19424)
+++ trunk/freenet/src/freenet/node/useralerts/ProxyUserAlert.java       
2008-04-19 16:21:23 UTC (rev 19425)
@@ -20,13 +20,14 @@
        }

        public void setAlert(UserAlert a) {
+               UserAlert old = alert;
+               alert = a;
                if(autoRegister) {
-                       if(alert == null && a != null)
+                       if(old == null && alert != null)
                                uam.register(this);
                }
-               alert = a;
                if(autoRegister) {
-                       if(a == null)
+                       if(alert == null)
                                uam.unregister(this);
                }
        }


Reply via email to