diff --git a/includes/flag.admin.inc b/includes/flag.admin.inc
index e3cfd4d..1e09e4b 100644
--- a/includes/flag.admin.inc
+++ b/includes/flag.admin.inc
@@ -679,7 +679,7 @@ function theme_flag_form_roles($variables) {
  * Delete flag page.
  */
 function flag_delete_confirm($form, &$form_state, $flag) {
-  $form['fid'] = array('#type' => 'value', '#value' => $flag->fid);
+  $form['#flag'] = $flag;
 
   return confirm_form($form,
     t('Are you sure you want to delete %title?', array('%title' => $flag->get_title())),
@@ -690,7 +690,7 @@ function flag_delete_confirm($form, &$form_state, $flag) {
 }
 
 function flag_delete_confirm_submit($form, &$form_state) {
-  $flag = flag_get_flag(NULL, $form_state['values']['fid']);
+  $flag = $form['#flag'];
   if ($form_state['values']['confirm']) {
     $flag->delete();
     $flag->disable();
diff --git a/includes/flag.pages.inc b/includes/flag.pages.inc
index d7334e0..e30d928 100644
--- a/includes/flag.pages.inc
+++ b/includes/flag.pages.inc
@@ -80,14 +80,11 @@ function flag_page($action, $flag, $entity_id) {
  * @see flag_confirm_submit()
  */
 function flag_confirm($form, &$form_state, $action, $flag, $entity_id) {
+  $form['#flag'] = $flag;
   $form['action'] = array(
     '#type' => 'value',
     '#value' => $action,
   );
-  $form['flag_name'] = array(
-    '#type' => 'value',
-    '#value' => $flag->name,
-  );
   $form['entity_id'] = array(
     '#type' => 'value',
     '#value' => $entity_id,
@@ -117,12 +114,10 @@ function flag_confirm($form, &$form_state, $action, $flag, $entity_id) {
  * @see flag_confirm()
  */
 function flag_confirm_submit(&$form, &$form_state) {
+  $flag = $form['#flag'];
   $action = $form_state['values']['action'];
-  $flag_name = $form_state['values']['flag_name'];
   $entity_id = $form_state['values']['entity_id'];
 
-  $flag = flag_get_flag($flag_name);
-
   if ($action == 'flag') {
     // If the action 'flag', further build up the new entity from form values.
     $flagging = $form['#flagging'];
