diff --git modules/overlay/overlay-child.js modules/overlay/overlay-child.js
index 47920a4..5fcfa8f 100644
--- modules/overlay/overlay-child.js
+++ modules/overlay/overlay-child.js
@@ -101,8 +101,11 @@ Drupal.overlayChild.behaviors.parseForms = function (context, settings) {
     var action = $(this).attr('action');
     // Keep internal forms in the overlay.
     if (action == undefined || (action.indexOf('http') != 0 && action.indexOf('https') != 0)) {
-      action += (action.indexOf('?') > -1 ? '&' : '?') + 'render=overlay';
-      $(this).attr('action', action);
+      // Make sure render=overlay is not added more than once.
+      if (action.indexOf('render=overlay') == -1) {
+        action += (action.indexOf('?') > -1 ? '&' : '?') + 'render=overlay';
+        $(this).attr('action', action);
+      }
     }
     // Submit external forms into a new window.
     else {
