diff --git modules/node/node.pages.inc modules/node/node.pages.inc
index 9e260ec..20fce2f 100644
--- modules/node/node.pages.inc
+++ modules/node/node.pages.inc
@@ -461,7 +461,7 @@ function node_delete_confirm($form, &$form_state, $node) {
 
   return confirm_form($form,
     t('Are you sure you want to delete %title?', array('%title' => $node->title)),
-    isset($_GET['destination']) ? $_GET['destination'] : 'node/' . $node->nid,
+    'node/' . $node->nid,
     t('This action cannot be undone.'),
     t('Delete'),
     t('Cancel')
diff --git modules/path/path.admin.inc modules/path/path.admin.inc
index ed56147..b10579b 100644
--- modules/path/path.admin.inc
+++ modules/path/path.admin.inc
@@ -186,7 +186,7 @@ function path_admin_delete_confirm($form, $form_state, $pid) {
     $form['pid'] = array('#type' => 'value', '#value' => $pid);
     $output = confirm_form($form,
       t('Are you sure you want to delete path alias %title?', array('%title' => $path['dst'])),
-      isset($_GET['destination']) ? $_GET['destination'] : 'admin/config/search/path');
+      'admin/config/search/path');
   }
   return $output;
 }
diff --git modules/system/system.module modules/system/system.module
index d653f7c..1b472c5 100644
--- modules/system/system.module
+++ modules/system/system.module
@@ -2273,6 +2273,8 @@ function confirm_form($form, $question, $path, $description = NULL, $yes = NULL,
     $fragment = isset($path['fragment']) ? $path['fragment'] : NULL;
     $path = isset($path['path']) ? $path['path'] : NULL;
   }
+  $path = $_GET['destination'] ? $_GET['destination'] : $path;
+
   $cancel = l($no ? $no : t('Cancel'), $path, array('query' => $query, 'fragment' => $fragment));
 
   drupal_set_title($question, PASS_THROUGH);
