diff options
-rw-r--r-- | _test/tests/inc/init_fullpath.test.php | 3 | ||||
-rw-r--r-- | inc/init.php | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/_test/tests/inc/init_fullpath.test.php b/_test/tests/inc/init_fullpath.test.php index fabf03fa0..670f1d09c 100644 --- a/_test/tests/inc/init_fullpath.test.php +++ b/_test/tests/inc/init_fullpath.test.php @@ -15,6 +15,7 @@ class init_fullpath_test extends DokuWikiTest { '/foo/./bar/baz' => '/foo/bar/baz', '/foo/bar/..' => '/foo', '/foo/bar/../../../baz' => '/baz', + '/foo/bar//baz' => '/foo/bar/baz', 'foo/bar/baz' => '/absolute/path/foo/bar/baz', 'foo//bar/baz' => '/absolute/path/foo/bar/baz', @@ -48,6 +49,7 @@ class init_fullpath_test extends DokuWikiTest { 'c:foo/./bar/baz' => 'c:/foo/bar/baz', 'c:foo/bar/..' => 'c:/foo', 'c:foo/bar/../../../baz' => 'c:/baz', + 'c:foo/bar//baz' => 'c:/foo/bar/baz', 'c:/foo/bar/baz' => 'c:/foo/bar/baz', 'c:/foo//bar/baz' => 'c:/foo/bar/baz', @@ -62,6 +64,7 @@ class init_fullpath_test extends DokuWikiTest { 'c:\\foo\\.\\bar\\baz' => 'c:/foo/bar/baz', 'c:\\foo\\bar\\..' => 'c:/foo', 'c:\\foo\\bar\\..\\..\\..\\baz' => 'c:/baz', + 'c:\\foo\\bar\\\\baz' => 'c:/foo/bar/baz', '\\\\server\\share/foo/bar/baz' => '\\\\server\\share/foo/bar/baz', '\\\\server\\share/foo//bar/baz' => '\\\\server\\share/foo/bar/baz', diff --git a/inc/init.php b/inc/init.php index 112f4896f..cd231b3bc 100644 --- a/inc/init.php +++ b/inc/init.php @@ -289,11 +289,13 @@ function init_paths(){ foreach($paths as $c => $p) { $path = empty($conf[$c]) ? $conf['savedir'].'/'.$p : $conf[$c]; $conf[$c] = init_path($path); - if(empty($conf[$c])) + if(empty($conf[$c])) { + $path = fullpath($path); nice_die("The $c ('$p') at $path is not found, isn't accessible or writable. You should check your config and permission settings. Or maybe you want to <a href=\"install.php\">run the installer</a>?"); + } } // path to old changelog only needed for upgrading |