Index: trunk/src/org/openstreetmap/josm/data/osm/User.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/User.java	(revision 4025)
+++ trunk/src/org/openstreetmap/josm/data/osm/User.java	(revision 4026)
@@ -110,9 +110,15 @@
     }
 
-    public static void loadRelicensingInformation() {
+    public static void initRelicensingInformation() {
+        if(relicensingUsers == null) {
+            loadRelicensingInformation(false);
+        }
+    }
+
+    public static void loadRelicensingInformation(boolean clean) {
         relicensingUsers = new HashSet<Long>();
         try {
             MirroredInputStream stream = new MirroredInputStream(Main.pref.get("url.licensechange",
-            "http://planet.openstreetmap.org/users_agreed/users_agreed.txt"), 7200);
+            "http://planet.openstreetmap.org/users_agreed/users_agreed.txt"), clean ? 1 : 7200);
             try {
                 InputStreamReader r;
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java	(revision 4025)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java	(revision 4026)
@@ -169,4 +169,5 @@
     public void showDialog() {
         super.showDialog();
+        User.initRelicensingInformation();
         Layer layer = Main.main.getActiveLayer();
         if (layer instanceof OsmDataLayer) {
@@ -278,5 +279,5 @@
         @Override
         public void actionPerformed(ActionEvent e) {
-            User.loadRelicensingInformation();
+            User.loadRelicensingInformation(true);
             Layer layer = Main.main.getActiveLayer();
             if (layer instanceof OsmDataLayer) {
