mirror of
https://gitlab.archlinux.org/archlinux/aurweb.git
synced 2025-02-03 10:43:03 +01:00
Use system rm in rm_rf function.
PHP can't properly handle symlinks which causes problems when self-referencing symlinks appear. This closes FS#11187. Signed-off-by: Loui Chang <louipc.ist@gmail.com>
This commit is contained in:
parent
99881b31db
commit
5c3f019093
1 changed files with 3 additions and 12 deletions
|
@ -374,19 +374,10 @@ function can_submit_pkg($name="", $sid="") {
|
||||||
# recursive delete directory
|
# recursive delete directory
|
||||||
#
|
#
|
||||||
function rm_rf($dirname="") {
|
function rm_rf($dirname="") {
|
||||||
$d = dir($dirname);
|
if ($dirname != "") {
|
||||||
while ($f = $d->read()) {
|
exec('rm -rf ' . escapeshellcmd($dirname));
|
||||||
if ($f != "." && $f != "..") {
|
|
||||||
if (is_dir($dirname."/".$f)) {
|
|
||||||
rm_rf($dirname."/".$f);
|
|
||||||
}
|
|
||||||
if (is_file($dirname."/".$f) || is_link($dirname."/".$f)) {
|
|
||||||
unlink($dirname."/".$f);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
$d->close();
|
|
||||||
rmdir($dirname);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue