Index: trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/AvailablePluginsView.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/AvailablePluginsView.cs	(revision 4526)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/AvailablePluginsView.cs	(revision 4527)
@@ -311,9 +311,9 @@
     }
 
+    // compares for two plugins with same major and minor version if plugin1 is newer than plugin2
     private static bool IsNewerThan(IPluginDescription plugin1, IPluginDescription plugin2) {
       // newer: build version is higher, or if build version is the same revision is higher
-      if (plugin1.Version.Build < plugin2.Version.Build) return false;
-      else if (plugin1.Version.Build > plugin2.Version.Build) return true;
-      else return plugin1.Version.Revision > plugin2.Version.Revision;
+      return plugin1.Version.Build > plugin2.Version.Build ||
+        (plugin1.Version.Build == plugin2.Version.Build && plugin1.Version.Revision > plugin2.Version.Revision);
     }
     #endregion
Index: trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/BasicUpdateView.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/BasicUpdateView.cs	(revision 4526)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/BasicUpdateView.cs	(revision 4527)
@@ -87,9 +87,9 @@
     }
 
+    // compares for two plugins with same major and minor version if plugin1 is newer than plugin2
     private static bool IsNewerThan(IPluginDescription plugin1, IPluginDescription plugin2) {
       // newer: build version is higher, or if build version is the same revision is higher
-      if (plugin1.Version.Build < plugin2.Version.Build) return false;
-      else if (plugin1.Version.Build > plugin2.Version.Build) return true;
-      else return plugin1.Version.Revision > plugin2.Version.Revision;
+      return plugin1.Version.Build > plugin2.Version.Build ||
+        (plugin1.Version.Build == plugin2.Version.Build && plugin1.Version.Revision > plugin2.Version.Revision);
     }
 
Index: trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstallationManagerForm.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstallationManagerForm.cs	(revision 4526)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstallationManagerForm.cs	(revision 4527)
@@ -83,17 +83,17 @@
 
     #region plugin manager event handlers
-    void pluginManager_Initialized(object sender, PluginInfrastructureEventArgs e) {
+    private void pluginManager_Initialized(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Initialized PluginInfrastructure");
     }
 
-    void pluginManager_Initializing(object sender, PluginInfrastructureEventArgs e) {
+    private void pluginManager_Initializing(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Initializing PluginInfrastructure");
     }
 
-    void pluginManager_PluginUnloaded(object sender, PluginInfrastructureEventArgs e) {
+    private void pluginManager_PluginUnloaded(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Unloaded " + e.Entity);
     }
 
-    void pluginManager_PluginLoaded(object sender, PluginInfrastructureEventArgs e) {
+    private void pluginManager_PluginLoaded(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Loaded " + e.Entity);
     }
@@ -101,19 +101,19 @@
 
     #region installation manager event handlers
-    void installationManager_PreUpdatePlugin(object sender, PluginInfrastructureCancelEventArgs e) {
+    private void installationManager_PreUpdatePlugin(object sender, PluginInfrastructureCancelEventArgs e) {
       if (e.Plugins.Count() > 0) {
-        e.Cancel = ConfirmUpdateAction(e.Plugins) == false;
-      }
-    }
-
-    void installationManager_PreRemovePlugin(object sender, PluginInfrastructureCancelEventArgs e) {
+        e.Cancel = (bool)Invoke((Func<IEnumerable<IPluginDescription>, bool>)ConfirmUpdateAction, e.Plugins) == false;
+      }
+    }
+
+    private void installationManager_PreRemovePlugin(object sender, PluginInfrastructureCancelEventArgs e) {
       if (e.Plugins.Count() > 0) {
-        e.Cancel = ConfirmRemoveAction(e.Plugins) == false;
-      }
-    }
-
-    void installationManager_PreInstallPlugin(object sender, PluginInfrastructureCancelEventArgs e) {
+        e.Cancel = (bool)Invoke((Func<IEnumerable<IPluginDescription>, bool>)ConfirmRemoveAction, e.Plugins) == false;
+      }
+    }
+
+    private void installationManager_PreInstallPlugin(object sender, PluginInfrastructureCancelEventArgs e) {
       if (e.Plugins.Count() > 0)
-        if (ConfirmInstallAction(e.Plugins) == true) {
+        if ((bool)Invoke((Func<IEnumerable<IPluginDescription>, bool>)ConfirmInstallAction, e.Plugins) == true) {
           SetStatusStrip("Installing " + e.Plugins.Aggregate("", (a, b) => a.ToString() + "; " + b.ToString()));
           e.Cancel = false;
@@ -124,13 +124,13 @@
     }
 
-    void installationManager_PluginUpdated(object sender, PluginInfrastructureEventArgs e) {
+    private void installationManager_PluginUpdated(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Updated " + e.Entity);
     }
 
-    void installationManager_PluginRemoved(object sender, PluginInfrastructureEventArgs e) {
+    private void installationManager_PluginRemoved(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Removed " + e.Entity);
     }
 
-    void installationManager_PluginInstalled(object sender, PluginInfrastructureEventArgs e) {
+    private void installationManager_PluginInstalled(object sender, PluginInfrastructureEventArgs e) {
       SetStatusStrip("Installed " + e.Entity);
     }
Index: trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstalledPluginsView.cs
===================================================================
--- trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstalledPluginsView.cs	(revision 4526)
+++ trunk/sources/HeuristicLab.PluginInfrastructure/3.3/Advanced/InstalledPluginsView.cs	(revision 4527)
@@ -120,9 +120,9 @@
     }
 
+    // compares for two plugins with same major and minor version if plugin1 is newer than plugin2
     private static bool IsNewerThan(IPluginDescription plugin1, IPluginDescription plugin2) {
       // newer: build version is higher, or if build version is the same revision is higher
-      if (plugin1.Version.Build < plugin2.Version.Build) return false;
-      else if (plugin1.Version.Build > plugin2.Version.Build) return true;
-      else return plugin1.Version.Revision > plugin2.Version.Revision;
+      return plugin1.Version.Build > plugin2.Version.Build ||
+        (plugin1.Version.Build == plugin2.Version.Build && plugin1.Version.Revision > plugin2.Version.Revision);
     }
     #endregion
