Browse Source

Merge remote-tracking branch 'curry684/issue-5130'

Jordi Boggiano 9 years ago
parent
commit
9f3b1fd062
1 changed files with 8 additions and 1 deletions
  1. 8 1
      src/Composer/Installer/PluginInstaller.php

+ 8 - 1
src/Composer/Installer/PluginInstaller.php

@@ -59,7 +59,14 @@ class PluginInstaller extends LibraryInstaller
         }
 
         parent::install($repo, $package);
-        $this->composer->getPluginManager()->registerPackage($package, true);
+        try {
+            $this->composer->getPluginManager()->registerPackage($package, true);
+        } catch(\Exception $e) {
+            // Rollback installation
+            $this->io->writeError('Plugin installation failed, rolling back');
+            parent::uninstall($repo, $package);
+            throw $e;
+        }
     }
 
     /**