]> git.mxchange.org Git - friendica.git/commitdiff
Bugfix: "remove_baseurl" accidentally normalized all links
authorMichael <heluecht@pirati.ca>
Tue, 15 Nov 2016 21:56:28 +0000 (21:56 +0000)
committerMichael <heluecht@pirati.ca>
Tue, 15 Nov 2016 21:56:28 +0000 (21:56 +0000)
boot.php

index 88f7ad7829fff1e30d40290b2794d2834fd089a1..230cbc1e3a43a7f24fe1a10f6cff3ed2dddc3518 100644 (file)
--- a/boot.php
+++ b/boot.php
@@ -1045,16 +1045,24 @@ class App {
         *
         * @return string The cleaned url
         */
-       function remove_baseurl($url){
+       function remove_baseurl($orig_url){
 
                // Is the function called statically?
-               if (!is_object($this))
+               if (!is_object($this)) {
                        return(self::$a->remove_baseurl($url));
+               }
 
-               $url = normalise_link($url);
+               // Remove the hostname from the url if it is an internal link
+               $url = normalise_link($orig_url);
                $base = normalise_link($this->get_baseurl());
                $url = str_replace($base."/", "", $url);
-               return $url;
+
+               // if it is an external link return the orignal value
+               if ($url == normalise_link($orig_url)) {
+                       return $orig_url;
+               } else {
+                       return $url;
+               }
        }
 
        /**