diff --git a/redirect.module b/redirect.module index 8c47b75..3fbb5c7 100644 --- a/redirect.module +++ b/redirect.module @@ -1029,6 +1029,11 @@ function redirect_redirect($redirect = NULL) { function redirect_goto($redirect) { $redirect->redirect_options['absolute'] = TRUE; $url = url($redirect->redirect, $redirect->redirect_options); + // ! One final check to make sure we're not in an internal loop + if ($redirect->redirect == current_path()) { + watchdog('redirect','Internal loop broken! ' . current_path()); + return; + } drupal_add_http_header('Location', $url); drupal_add_http_header('Status', redirect_status_code_options($redirect->status_code));