diff --git a/file_entity.admin.inc b/file_entity.admin.inc
index 0d23355..0e24997 100644
--- a/file_entity.admin.inc
+++ b/file_entity.admin.inc
@@ -16,7 +16,8 @@ function file_entity_admin_files($form, &$form_state) {
     // was selected.  Hand off to the callback of the operation at this point
     // which should return a confirm form.
     $operation = $form_state['values']['operation'];
-    return call_user_func_array($operation['callback'], array($form_state['values']['files']));
+    $files = array_keys(array_filter($form_state['values']['files']));
+    return call_user_func_array($operation['callback'], array($files));
   }
 
   $limit = variable_get('file_entity_admin_files_limit', 50);
diff --git a/file_entity.module b/file_entity.module
index ec68932..bf67eb9 100644
--- a/file_entity.module
+++ b/file_entity.module
@@ -686,6 +686,12 @@ function file_entity_multiple_delete_confirm_operation($files) {
   // This function is a form generation function.
   $form = array();
   $form_state = array();
+  if (!empty($_GET['destination'])) {
+    $_GET['destination'] = 'admin/content/file';
+  }
+  // Set the submit handler explicitly because this form is being built
+  // under a different form_id.
+  $form['#submit'][] = 'file_entity_multiple_delete_confirm_submit';
   return file_entity_multiple_delete_confirm($form, $form_state, $files);
 }
 
diff --git a/file_entity.pages.inc b/file_entity.pages.inc
index 05bf54e..8c83fdb 100644
--- a/file_entity.pages.inc
+++ b/file_entity.pages.inc
@@ -107,7 +107,6 @@ function file_entity_page_delete($file) {
  */
 function file_entity_multiple_delete_confirm($form, &$form_state, $files, $redirect_path = NULL) {
   $form = array();
-  $files = array_filter($files);
 
   $form['files'] = array('#tree' => TRUE);
   $form['file_titles'] = array('#theme' => 'item_list');
@@ -121,7 +120,6 @@ function file_entity_multiple_delete_confirm($form, &$form_state, $files, $redir
     $form['file_titles']['#items'][] = check_plain($file->filename);
   }
   $form['operation'] = array('#type' => 'hidden', '#value' => 'delete');
-  $form['#submit'][] = 'file_entity_multiple_delete_confirm_submit';
 
   $confirm_question = format_plural(count($files),
                                   'Are you sure you want to delete this file?',
