summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Gohr <andi@splitbrain.org>2009-02-05 18:04:49 +0100
committerAndreas Gohr <andi@splitbrain.org>2009-02-05 18:04:49 +0100
commitb9c4302b4c3beff2b77cbb858d0133d09a93bf63 (patch)
tree919875cbe6cf46ab2e9afb898093f79cfd70d114
parent3cd36d102e7362d0d548681f21154df643c1157a (diff)
downloadrpg-b9c4302b4c3beff2b77cbb858d0133d09a93bf63.tar.gz
rpg-b9c4302b4c3beff2b77cbb858d0133d09a93bf63.tar.bz2
fixed fullpath() for certain Windows setups
Ignore-this: 7059284786889a3ead12f5a4b3873bdf darcs-hash:20090205170449-7ad00-63f9459819a355abc7a154e07b487d8431097614.gz
-rw-r--r--_test/cases/inc/init_fullpath.test.php40
-rw-r--r--inc/init.php2
2 files changed, 21 insertions, 21 deletions
diff --git a/_test/cases/inc/init_fullpath.test.php b/_test/cases/inc/init_fullpath.test.php
index 944d6bd02..63394b09d 100644
--- a/_test/cases/inc/init_fullpath.test.php
+++ b/_test/cases/inc/init_fullpath.test.php
@@ -44,26 +44,26 @@ class init_fullpath_test extends UnitTestCase {
// paths to check
$tests = array(
- 'c:foo/bar/baz' => 'c:foo/bar/baz',
- 'c:foo//bar/baz' => 'c:foo/bar/baz',
- 'c:foo/../bar/baz' => 'c:bar/baz',
- '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:bar/baz',
- '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:bar/baz',
- '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:/bar/baz',
+ '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:/bar/baz',
+ '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:/bar/baz',
+ 'c:\\foo\\.\\bar\\baz' => 'c:/foo/bar/baz',
+ 'c:\\foo\\bar\\..' => 'c:/foo',
+ 'c:\\foo\\bar\\..\\..\\..\\baz' => 'c:/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 f577188e8..b64a6611a 100644
--- a/inc/init.php
+++ b/inc/init.php
@@ -533,7 +533,7 @@ function fullpath($path,$exists=false){
}elseif($iswin){
// match drive letter and UNC paths
if(preg_match('!^([a-zA-z]:)(.*)!',$path,$match)){
- $root = $match[1];
+ $root = $match[1].'/';
$path = $match[2];
}else if(preg_match('!^(\\\\\\\\[^\\\\/]+\\\\[^\\\\/]+[\\\\/])(.*)!',$path,$match)){
$root = $match[1];