Index: modules/overlay/overlay.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/overlay/overlay.module,v
retrieving revision 1.4
diff -u -p -r1.4 overlay.module
--- modules/overlay/overlay.module	14 Dec 2009 16:36:56 -0000	1.4
+++ modules/overlay/overlay.module	27 Dec 2009 22:34:40 -0000
@@ -515,8 +515,8 @@ function overlay_request_dialog_close($v
  *   The path that should open in the parent window after the overlay closes.
  */
 function overlay_close_dialog($redirect = NULL) {
-  if (empty($redirect)) {
-    $path = $_GET['q'];
+  if (!isset($redirect)) {
+    $redirect = current_path();
   }
   $settings = array(
     'overlayChild' => array(
Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.862
diff -u -p -r1.862 system.module
--- modules/system/system.module	15 Dec 2009 08:45:32 -0000	1.862
+++ modules/system/system.module	27 Dec 2009 22:34:40 -0000
@@ -3564,6 +3564,7 @@ function system_admin_paths() {
   $paths = array(
     'admin' => TRUE,
     'admin/*' => TRUE,
+    'batch' => TRUE,
   );
   return $paths;
 }
