From 190908bc1e48a8c948c8fed8251c85a2055bd0a6 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Tue, 12 Jul 2011 17:45:01 +0200 Subject: [PATCH] fix error in autocomplete when try to list non-existing or unreadable folders --- files/ajax/autocomplete.php | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/files/ajax/autocomplete.php b/files/ajax/autocomplete.php index af23537980..2c2f665fd6 100644 --- a/files/ajax/autocomplete.php +++ b/files/ajax/autocomplete.php @@ -40,17 +40,19 @@ $query=strtolower($query); $files=array(); -if(OC_FILESYSTEM::is_dir($base)){ +if(OC_FILESYSTEM::file_exists($base) and OC_FILESYSTEM::is_dir($base)){ $dh = OC_FILESYSTEM::opendir($base); - if(substr($base,-1,1)!='/'){ - $base=$base.'/'; - } - while (($file = readdir($dh)) !== false) { - if ($file != "." && $file != ".."){ - if(substr(strtolower($file),0,$queryLen)==$query){ - $item=$base.$file; - if((!$dirOnly or OC_FILESYSTEM::is_dir($item))){ - $files[]=(object)array('id'=>$item,'label'=>$item,'name'=>$item); + if($dh){ + if(substr($base,-1,1)!='/'){ + $base=$base.'/'; + } + while (($file = readdir($dh)) !== false) { + if ($file != "." && $file != ".."){ + if(substr(strtolower($file),0,$queryLen)==$query){ + $item=$base.$file; + if((!$dirOnly or OC_FILESYSTEM::is_dir($item))){ + $files[]=(object)array('id'=>$item,'label'=>$item,'name'=>$item); + } } } }