diff --git a/CRM/Core/QuickForm/Action/Jump.php b/CRM/Core/QuickForm/Action/Jump.php index 4bc3921ab1b6..0900b2c88a05 100644 --- a/CRM/Core/QuickForm/Action/Jump.php +++ b/CRM/Core/QuickForm/Action/Jump.php @@ -74,6 +74,9 @@ public function perform(&$page, $actionName) { } // generate the URL for the page 'display' event and redirect to it $action = $current->getAttribute('action'); + // prevent URLs that end in ? from causing redirects + $action = rtrim($action, '?'); + // FIXME: this should be passed through CRM_Utils_System::url() $url = $action . (FALSE === strpos($action, '?') ? '?' : '&') . $current->getButtonName('display') . '=true' . '&qfKey=' . $page->get('qfKey'); CRM_Utils_System::redirect($url);