From ef38bfe8bb5e72af7ca6f9b442f1d95dfb1d1e0b Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sun, 30 Sep 2007 23:49:58 +0200 Subject: fullpath fix for Windows darcs-hash:20070930214958-7ad00-bc8ca26f86ea4c9e68ea2b8f3cacc2a598543122.gz --- inc/init.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'inc/init.php') diff --git a/inc/init.php b/inc/init.php index f96997f21..354c0f0a4 100644 --- a/inc/init.php +++ b/inc/init.php @@ -410,10 +410,13 @@ EOT; * @link http://de3.php.net/manual/en/function.realpath.php#75992 */ function fullpath($path){ + $iswin = (strtoupper(substr(PHP_OS, 0, 3)) === 'WIN'); + if($iswin) $path = str_replace('\\','/',$path); // windows compatibility - // check if path begins with "/" ie. is absolute + // check if path begins with "/" or "c:" ie. is absolute // if it isnt concat with script path - if (strpos($path,"/") !== 0) { + if ((!$iswin && $path{0} !== '/') || + ($iswin && $path{1} !== ':')) { $base=dirname($_SERVER['SCRIPT_FILENAME']); $path=$base."/".$path; } @@ -421,15 +424,16 @@ function fullpath($path){ // canonicalize $path=explode('/', $path); $newpath=array(); - for ($i=0; $i