diff --git a/inc/pageutils.php b/inc/pageutils.php
index a2efdc5d52bffae8b43853cc89faf913ff2037a0..969a6ea0d016c5972b631eaa9900e18726ac527e 100644
--- a/inc/pageutils.php
+++ b/inc/pageutils.php
@@ -185,10 +185,10 @@ function noNSorNS($id) {
     global $conf;
 
     $p = noNS($id);
-    if ($p == $conf['start']) {
+    if ($p == $conf['start'] || $p == false) {
         $p = curNS($id);
         if ($p == false) {
-            return noNS($id);
+            return $conf['start'];
         }
     }
     return $p;
diff --git a/inc/parser/renderer.php b/inc/parser/renderer.php
index 4dac75d213f65ee447cb009fe38706a43d5831e4..7e52cfce2399b50160fdb4d162785a89ff04532a 100644
--- a/inc/parser/renderer.php
+++ b/inc/parser/renderer.php
@@ -271,20 +271,12 @@ class Doku_Renderer extends DokuWiki_Plugin {
         list($name,$hash) = explode('#',$name,2);
         if($hash) return $hash;
 
-        //trim colons or slash of a namespace link
-        $name = rtrim($name,':');
-        if($conf['useslash'])
-          $name = rtrim($name,'/');
-
+        $name = strtr($name,';',':');
         if($conf['useslash']){
-            $nssep = '[:;/]';
-        }else{
-            $nssep = '[:;]';
+            $name = strtr($name,'/',':');
         }
-        $name = preg_replace('!.*'.$nssep.'!','',$name);
 
-        if(!$name) return $this->_simpleTitle($conf['start']);
-        return $name;
+        return noNSorNS($name);
     }
 
     /**