diff options
Diffstat (limited to 'lib/installer.php')
-rw-r--r-- | lib/installer.php | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/lib/installer.php b/lib/installer.php index db64d8e32d5..c5ecacae544 100644 --- a/lib/installer.php +++ b/lib/installer.php @@ -105,6 +105,17 @@ class OC_Installer{ //load the info.xml file of the app if(!is_file($extractDir.'/appinfo/info.xml')){ + //try to find it in a subdir + $dh=opendir($extractDir); + while($folder=readdir($dh)){ + if(substr($folder,0,1)!='.' and is_dir($extractDir.'/'.$folder)){ + if(is_file($extractDir.'/'.$folder.'/appinfo/info.xml')){ + $extractDir.='/'.$folder; + } + } + } + } + if(!is_file($extractDir.'/appinfo/info.xml')){ OC_Log::write('core','App does not provide an info.xml file',OC_Log::ERROR); OC_Helper::rmdirr($extractDir); if($data['source']=='http'){ |