? review-order-reload.diff
Index: uc_cart/uc_cart.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/ubercart/uc_cart/uc_cart.module,v
retrieving revision 1.14.2.10
diff -u -F^f -r1.14.2.10 uc_cart.module
--- uc_cart/uc_cart.module	23 Apr 2008 19:38:07 -0000	1.14.2.10
+++ uc_cart/uc_cart.module	6 May 2008 18:35:15 -0000
@@ -1518,12 +1518,11 @@ function uc_cart_checkout_form_submit($f
  * Allow a customer to review their order before finally submitting it.
  */
 function uc_cart_checkout_review() {
-  $form = drupal_get_form('uc_cart_checkout_review_form');
-
   if ($_SESSION['do_review'] !== TRUE && substr(referer_uri(), -13) != 'cart/checkout') {
     drupal_goto('cart');
   }
-  unset($_SESSION['do_review']);
+
+  $form = drupal_get_form('uc_cart_checkout_review_form');
 
   $order_id = intval($_SESSION['cart_order']);
 
@@ -1632,6 +1631,10 @@ function uc_cart_checkout_review_form() 
 }
 
 function uc_cart_checkout_review_form_submit($form_id, $form_values) {
+  // When the checkout review form is submitted, we are no longer in
+  // do_review mode.
+  unset($_SESSION['do_review']);
+
   switch ($form_values['op']) {
     case variable_get('uc_checkout_submit_button', t('Submit order')):
       // Invoke hook_order($op = 'submit') to test to make sure the order can
