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