function wptouch_recursive_delete($source_dir) { // Only allow a delete to occur for directories in the main WPtouch data directory if (strpos($source_dir, '..') !== false || strpos($source_dir, WPTOUCH_BASE_CONTENT_DIR) === false) { WPTOUCH_DEBUG(WPTOUCH_SECURITY, 'Not deleting directory ' . $source_dir . ' due to possibly security risk'); return; } $src_dir = @opendir($source_dir); if ($src_dir) { while (($f = readdir($src_dir)) !== false) { if ($f == '.' || $f == '..') { continue; } $cur_file = $source_dir . '/' . $f; if (is_dir($cur_file)) { wptouch_recursive_delete($cur_file); @rmdir($cur_file); } else { @unlink($cur_file); } } closedir($src_dir); @rmdir($source_dir); } }
function recursive_delete($source_dir) { require_once WPTOUCH_DIR . '/core/file-operations.php'; wptouch_recursive_delete($source_dir); }