diff --git a/features.drush.inc b/features.drush.inc
index 2034419..5f22cc2 100644
--- a/features.drush.inc
+++ b/features.drush.inc
@@ -212,7 +212,7 @@ function drush_features_update_all() {
   drush_print(dt('The following modules will be updated: !modules', array('!modules' => implode(', ', $features_to_update))));
   if (drush_confirm(dt('Do you really want to continue?'))) {
     foreach ($features_to_update as $module_name) {
-      drush_backend_invoke('features-update '. $module_name);
+      drush_invoke_process('features-update', $module_name);
     }
   }
   else {
@@ -342,7 +342,7 @@ function drush_features_revert_all() {
   drush_print(dt('The following modules will be reverted: !modules', array('!modules' => implode(', ', $features_to_revert))));
   if (drush_confirm(dt('Do you really want to continue?'))) {
     foreach ($features_to_revert as $module_name) {
-      drush_backend_invoke('features-revert '. $module_name);
+      drush_invoke_process('features-revert', $module_name);
     }
   }
   else {
@@ -376,11 +376,11 @@ function drush_features_diff() {
     if (drush_confirm(dt('It seems that the Diff module is not available. Would you like to download and enable it?'))) {
       // Download it if it's not already here.
       $project_info = drush_get_projects();
-      if (empty($project_info['diff']) && !drush_backend_invoke('dl diff')) {
+      if (empty($project_info['diff']) && !drush_invoke_process('dl', 'diff')) {
         return drush_set_error(dt('Diff module could not be downloaded.'));
       }
 
-      if (!drush_backend_invoke('en diff')) {
+      if (!drush_invoke_process('en', 'diff')) {
         return drush_set_error(dt('Diff module could not be enabled.'));
       }
     }
