バックアップ処理で
eccube/html/user_data/bkupに作業用ディレクトリを作成し、tar.gzに固めて作業ディレクトリを削除するという処理があると思いますが、Windowsではエラーがでます。
FedoraCore4では出ないし他の方も騒いでいないようなので、環境の問題なのですが(汗)。
Warning: rmdir(W:/www/eccube/html/user_data/bkup/hoge//css) [function.rmdir]: Permission denied in W:\www\eccube\data\lib\slib.php on line 2532
WindowsXPにXSASを入れてテストしてますので、バグというよりは環境が保障対象外なだけなのですが、エラーがでる原因がわかりましたので報告します。
eccube/data/lib/slib.phpの
引用:
// 指定したフォルダ内のファイルを全て削除する
function sfDelFile($dir){
$dh = opendir($dir);
// フォルダ内のファイルを削除
while(false !== ($file = readdir($dh))){
if ($file == "." or $file == "..") continue;
$del_file = $dir . "/" . $file;
if(is_file($del_file)){
$ret = unlink($dir . "/" . $file);
}else if (is_dir($del_file)){
$ret = sfDelFile($del_file);
}
if(!$ret){
return $ret;
}
}
// フォルダを削除
closedir($dh); // ← ここ追加
return rmdir($dir);
}
ようはカレントディレクトリにいるからカレントディレクトリが削除できなかったみたいです。
closedirで直りました。