diff --git a/core/lib/Drupal/Core/FileTransfer/Form/FileTransferAuthorizeForm.php b/core/lib/Drupal/Core/FileTransfer/Form/FileTransferAuthorizeForm.php index f5d2860..e57a95f 100644 --- a/core/lib/Drupal/Core/FileTransfer/Form/FileTransferAuthorizeForm.php +++ b/core/lib/Drupal/Core/FileTransfer/Form/FileTransferAuthorizeForm.php @@ -12,6 +12,7 @@ use Drupal\Core\Render\Element; use Symfony\Component\DependencyInjection\ContainerInterface; use Symfony\Component\HttpFoundation\Response; +use Symfony\Component\HttpFoundation\RedirectResponse; /** * Provides the file transfer authorization form. @@ -220,15 +221,18 @@ public function submitForm(array &$form, FormStateInterface $form_state) { } } // Set this one as the default authorize method. - $this->config('system.authorize')->set('filetransfer_default', $filetransfer_backend); + $this->configFactory()->getEditable('system.authorize')->set('filetransfer_default', $filetransfer_backend)->save(); // Save the connection settings minus the password. - $this->config('system.authorize')->set('filetransfer_connection_settings_' . $filetransfer_backend, $connection_settings); + $this->configFactory()->getEditable('system.authorize')->set('filetransfer_connection_settings_' . $filetransfer_backend, $connection_settings)->save(); $filetransfer = $this->getFiletransfer($filetransfer_backend, $form_connection_settings[$filetransfer_backend]); // Now run the operation. $response = $this->runOperation($filetransfer); - if ($response instanceof Response) { + if ($response instanceof RedirectResponse) { + $response->send(); + } + elseif ($response instanceof Response) { $form_state->setResponse($response); } }