? 593314_drush_enable_hook_requirement_error.patch
? drush_enable_hook_requirement_error.patch
? drushrc.php
? nbproject
? includes/table.inc
Index: commands/pm/pm.drush.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/drush/commands/pm/pm.drush.inc,v
retrieving revision 1.53
diff -w -u -p -r1.53 pm.drush.inc
--- commands/pm/pm.drush.inc	1 Oct 2009 14:13:28 -0000	1.53
+++ commands/pm/pm.drush.inc	1 Oct 2009 17:04:32 -0000
@@ -261,6 +261,12 @@ function pm_module_manage($modules = arr
       $install_modules = array();
       $enable_modules = array();
       foreach ($modules as $module) {
+        // Check to see if the module can be installed/enabled (hook_requirements)
+        // See @system_modules_submit
+        if (!drupal_check_module($module)) {
+          continue;
+        }
+        
         // In Drupal 5, drupal_install_modules() only installs new modules,
         // and does not enable previously installed and disabled modules.
         if (drupal_get_installed_schema_version($module) == SCHEMA_UNINSTALLED) {
@@ -273,8 +279,9 @@ function pm_module_manage($modules = arr
       drupal_install_modules($install_modules);
       module_enable($enable_modules);
       $current = drupal_map_assoc($enabled, 'pm_true');
-      // Add the list of enabled modules from the active modules list.
-      $active_modules = array_merge($current, drupal_map_assoc($modules, 'pm_true'));
+      // Add the list of processed modules from the active modules list.
+      $processed_modules = array_merge($install_modules, $enable_modules);
+      $active_modules = array_merge($current, drupal_map_assoc($processed_modules, 'pm_true'));
     }
     else {
       pm_reverse_dependencies($modules, $enabled, $module_info);
