Index: /trunk/src/org/openstreetmap/josm/gui/MainApplication.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 3053)
+++ /trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 3054)
@@ -175,5 +175,5 @@
 
         monitor.subTask(tr("Installing updated plugins"));
-        PluginHandler.installDownloadedPlugins();
+        PluginHandler.installDownloadedPlugins(true);
         monitor.worked(1);
 
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginPreferencesModel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginPreferencesModel.java	(revision 3053)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginPreferencesModel.java	(revision 3054)
@@ -289,5 +289,5 @@
         for (PluginInformation pi : plugins) {
             File downloadedPluginFile = new File(pluginDir, pi.name + ".jar.new");
-            if (! downloadedPluginFile.exists() && downloadedPluginFile.canRead()) {
+            if (!(downloadedPluginFile.exists() && downloadedPluginFile.canRead())) {
                 continue;
             }
Index: /trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java	(revision 3053)
+++ /trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java	(revision 3054)
@@ -173,4 +173,5 @@
             downloaded.add(d);
         }
+        PluginHandler.installDownloadedPlugins(false);
     }
 
Index: /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 3053)
+++ /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 3054)
@@ -714,5 +714,5 @@
      * 
      */
-    public static void installDownloadedPlugins() {
+    public static void installDownloadedPlugins(boolean dowarn) {
         File pluginDir = Main.pref.getPluginsDirectory();
         if (! pluginDir.exists() || ! pluginDir.isDirectory() || ! pluginDir.canWrite())
@@ -729,5 +729,5 @@
             String pluginName = updatedPlugin.getName().substring(0, updatedPlugin.getName().length() - 8);
             if (plugin.exists()) {
-                if (!plugin.delete()) {
+                if (!plugin.delete() && !dowarn) {
                     System.err.println(tr("Warning: failed to delete outdated plugin ''{0}''.", plugin.toString()));
                     System.err.println(tr("Warning: failed to install already downloaded plugin ''{0}''. Skipping installation. JOSM is still going to load the old plugin version.", pluginName));
@@ -735,5 +735,5 @@
                 }
             }
-            if (!updatedPlugin.renameTo(plugin)) {
+            if (!updatedPlugin.renameTo(plugin) && !dowarn) {
                 System.err.println(tr("Warning: failed to install plugin ''{0}'' from temporary download file ''{1}''. Renaming failed.", plugin.toString(), updatedPlugin.toString()));
                 System.err.println(tr("Warning: failed to install already downloaded plugin ''{0}''. Skipping installation. JOSM is still going to load the old plugin version.", pluginName));
