From 08719b0522fa4b84698114750b34fa91b1496d0e Mon Sep 17 00:00:00 2001 From: Noah Hilverling Date: Tue, 18 Oct 2016 16:13:37 +0200 Subject: [PATCH] Url: Do not try to set attributes in method fromPath if not needed refs #12133 --- library/Icinga/Web/Url.php | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/library/Icinga/Web/Url.php b/library/Icinga/Web/Url.php index 742002b5b..19310e622 100644 --- a/library/Icinga/Web/Url.php +++ b/library/Icinga/Web/Url.php @@ -214,20 +214,23 @@ class Url if (isset($urlParts['fragment'])) { $urlObject->setAnchor($urlParts['fragment']); } - if (isset($urlParts['host'])) { - $urlObject->setHost($urlParts['host']); - } - if (isset($urlParts['port'])) { - $urlObject->setPort($urlParts['port']); - } - if (isset($urlParts['scheme'])) { - $urlObject->setScheme($urlParts['scheme']); - } - if (isset($urlParts['user'])) { - $urlObject->setUsername($urlParts['user']); - } - if (isset($urlParts['pass'])) { - $urlObject->setPassword($urlParts['pass']); + + if (isset($urlParts['user']) || $urlObject->isExternal()) { + if (isset($urlParts['user'])) { + $urlObject->setUsername($urlParts['user']); + } + if (isset($urlParts['host'])) { + $urlObject->setHost($urlParts['host']); + } + if (isset($urlParts['port'])) { + $urlObject->setPort($urlParts['port']); + } + if (isset($urlParts['scheme'])) { + $urlObject->setScheme($urlParts['scheme']); + } + if (isset($urlParts['pass'])) { + $urlObject->setPassword($urlParts['pass']); + } } $urlObject->setParams($params);