From d32db977eb6d0f0367d063b977803df6f381fdfb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eric=20Espi=C3=A9?= Date: Wed, 18 Apr 2018 13:44:45 +0000 Subject: [PATCH] Fix unnecessary warning about not empty directory SVN:trunk[5689] --- setup/setuputils.class.inc.php | 29 +++++++---------------------- 1 file changed, 7 insertions(+), 22 deletions(-) diff --git a/setup/setuputils.class.inc.php b/setup/setuputils.class.inc.php index 1bac021e7..08fcfde56 100644 --- a/setup/setuputils.class.inc.php +++ b/setup/setuputils.class.inc.php @@ -656,11 +656,17 @@ class SetupUtils public static function rmdir_safe($dir) { // avoid unnecessary warning - if (@rmdir($dir) === false) + // Try 100 times... + $i = 100; + while ((@rmdir($dir) === false) && $i > 0) { // Magic trick for windows // sometimes the folder is empty but rmdir fails closedir(opendir($dir)); + $i--; + } + if ($i == 0) + { rmdir($dir); } } @@ -784,27 +790,6 @@ class SetupUtils { self::rmdir_safe($sSource); } - - /** - * We have tried the following implementation (based on a rename/mv) - * But this does not work on some OSes. - * More info: https://bugs.php.net/bug.php?id=54097 - * - $aFiles = scandir($sSource); - if(sizeof($aFiles) > 0) - { - foreach($aFiles as $sFile) - { - if ($sFile == '.' || $sFile == '..') - { - // Skip - continue; - } - rename($sSource.'/'.$sFile, $sDest.'/'.$sFile); - } - } - self::rmdir_safe($sSource); - */ } static function GetPreviousInstance($sDir)