static function findUnownedFiles($dir) { $dir = str_replace('./', '', $dir); if (!preg_match('/^\\//', $dir)) { $dir = getcwd() . '/' . $dir; } if (!is_dir($dir)) { return sendMessage('invalidDirectory', array('%dir' => $dir)); } PacmanData::initializeFileList(); walkDir($dir); $dir_strlen = strlen($dir); $progress_position = 0; $progress_length = count($GLOBALS['pacman_file_list']->file_list); foreach ($GLOBALS['pacman_file_list']->file_list as $packageName => $packageData) { echo "\r" . round($progress_position++ / $progress_length * 10000) / 100 . '%'; $tmpFiles = $packageData['%FILES%']; $tmpFiles_count = count($tmpFiles); for ($i = 0; $i < $tmpFiles_count; $i++) { $currFile = $tmpFiles[$i]; $GLOBALS['WALK_DIR_RESULTS'][$currFile] = FALSE; } } echo "\r"; foreach ($GLOBALS['WALK_DIR_RESULTS'] as $file => $ownerMissing) { if ($ownerMissing === TRUE) { echo $file . "\n"; } } if ($GLOBALS['uid'] != 0) { sendMessage('recomendRootOrphans', array()); } }