From 487de770021bf622d5790db562ca625009189881 Mon Sep 17 00:00:00 2001 From: Alex Pott <alex.a.pott@googlemail.com> Date: Wed, 20 May 2015 16:30:36 +0100 Subject: [PATCH] Issue #2112895 by willzyx, swentel, drunken monkey: Wrong redirection in admin/modules/uninstall/confirm if drupal is installed in a subdirectory --- core/modules/system/src/Form/ModulesUninstallConfirmForm.php | 2 +- core/modules/system/src/Tests/Module/UninstallTest.php | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/core/modules/system/src/Form/ModulesUninstallConfirmForm.php b/core/modules/system/src/Form/ModulesUninstallConfirmForm.php index 159959d5c335..5ee4adbe032d 100644 --- a/core/modules/system/src/Form/ModulesUninstallConfirmForm.php +++ b/core/modules/system/src/Form/ModulesUninstallConfirmForm.php @@ -135,7 +135,7 @@ public function buildForm(array $form, FormStateInterface $form_state) { // Prevent this page from showing when the module list is empty. if (empty($this->modules)) { - return new RedirectResponse('/admin/modules/uninstall'); + return $this->redirect('system.modules_uninstall'); } $data = system_rebuild_module_data(); diff --git a/core/modules/system/src/Tests/Module/UninstallTest.php b/core/modules/system/src/Tests/Module/UninstallTest.php index 337258c67926..c7eb051c3857 100644 --- a/core/modules/system/src/Tests/Module/UninstallTest.php +++ b/core/modules/system/src/Tests/Module/UninstallTest.php @@ -106,5 +106,10 @@ function testUninstallPage() { // Make sure our unique cache entry is gone. $cached = \Drupal::cache()->get('uninstall_test'); $this->assertFalse($cached, 'Cache entry not found'); + + // Make sure confirmation page is accessible only during uninstall process. + $this->drupalGet('admin/modules/uninstall/confirm'); + $this->assertUrl('admin/modules/uninstall'); + $this->assertTitle(t('Uninstall') . ' | Drupal'); } } -- GitLab