From 1c6c1c6c7a64f010e0f9919ab40f018383fea205 Mon Sep 17 00:00:00 2001 From: Michael Hamann <michael@content-space.de> Date: Mon, 1 Oct 2012 22:39:38 +0200 Subject: [PATCH] Escape filename in regex in search_index() This problem was reported in https://forum.dokuwiki.org/thread/8143. Apart from warnings you could notice that when you have namespaces "foo" and "f.o" and you open the sitemap for "foo" that "f.o" is opened, too. --- inc/search.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inc/search.php b/inc/search.php index a02b86b34..1cecfd5ec 100644 --- a/inc/search.php +++ b/inc/search.php @@ -119,7 +119,7 @@ function search_index(&$data,$base,$file,$type,$lvl,$opts){ 'listfiles' => !$opts['nofiles'], 'sneakyacl' => $conf['sneaky_index'], // Hacky, should rather use recmatch - 'depth' => preg_match('#^'.$file.'(/|$)#','/'.$opts['ns']) ? 0 : -1 + 'depth' => preg_match('#^'.preg_quote($file, '#').'(/|$)#','/'.$opts['ns']) ? 0 : -1 ); return search_universal($data, $base, $file, $type, $lvl, $opts); -- GitLab