diff --git a/plugins/function.buildpath.php b/plugins/function.buildpath.php
index c67e4942d62f67210774595b39555f283f88ac14..41f24346f689ca66024d0685c6882d04098d0380 100644
--- a/plugins/function.buildpath.php
+++ b/plugins/function.buildpath.php
@@ -2,7 +2,7 @@
 	function smarty_function_buildpath($params, &$smarty) {
 		if ($params['item']=="") return "/";
 		foreach ($params['list'] as $crumb) {
-			if ($crumb!="") $output.="/".$crumb;
+			if ($crumb!="") $output.="/".rawurlencode($crumb);
 			if ($crumb==$params['item']) return $output;
 		}
 
diff --git a/templates/breadcrumb.tpl b/templates/breadcrumb.tpl
index b77a6ca2f00f53ff14b96482b44d9b0c94dba620..01b56027bd40ed469872162753a3aefb918ef22a 100644
--- a/templates/breadcrumb.tpl
+++ b/templates/breadcrumb.tpl
@@ -2,7 +2,7 @@
 {if $pathlist}
 				<ul>
 {foreach name=pathlist from=$pathlist key=key item=item}
-					<li>{if !$smarty.foreach.pathlist.first}{if $item!=""}&gt; {/if}{/if}{if !$smarty.foreach.pathlist.last}<a href="{buildpath list=$pathlist item=$item|escape:'url'}">{/if}{if $item}{$item|escape:'htmlall'}{else}{if $smarty.foreach.pathlist.first}SUCS{/if}{/if}{if !$smarty.foreach.pathlist.last}</a>{/if}</li>
+					<li>{if !$smarty.foreach.pathlist.first}{if $item!=""}&gt; {/if}{/if}{if !$smarty.foreach.pathlist.last}<a href="{buildpath list=$pathlist item=$item}">{/if}{if $item}{$item|escape:'htmlall'}{else}{if $smarty.foreach.pathlist.first}SUCS{/if}{/if}{if !$smarty.foreach.pathlist.last}</a>{/if}</li>
 {/foreach}
 				</ul>
 {/if}