diff --git a/lib/internal/Magento/Framework/System/Ftp.php b/lib/internal/Magento/Framework/System/Ftp.php index 4b6432a863ebe..8bf898965cbc3 100644 --- a/lib/internal/Magento/Framework/System/Ftp.php +++ b/lib/internal/Magento/Framework/System/Ftp.php @@ -105,6 +105,12 @@ public function validateConnectionString($string) if ($data['scheme'] != 'ftp') { throw new \Exception("Support for scheme unsupported: '{$data['scheme']}'"); } + + // Decode user & password strings from URL + foreach (array_intersect(array_keys($data), ['user','pass']) as $key) { + $data[$key] = urldecode($data[$key]); + } + return $data; }