mediagalleryプラグインでzipファイルを展開モードでアップロードすると致命的エラー

2007-10-22 20:46

投稿者: サイト管理者

【重要】1.5.0jpr2でもこの影響を受けます

ZIPファイルをアップロードした際に展開するよう設定を変更している場合で再現。アップロードされたファイルを一時的に展開するための作業フォルダを削除する際にエラーになります。初期設定は展開されないようになっているので、この影響は受けません。

今回初めてファイル操作をしている部分を開きましたが、日本語のファイル名でのアップロードはしないほうがよいでしょう。基本的にマルチバイト文字のことを考慮されずにプログラムが書かれています。

<geeklog>/public_html/mediagallery/lib-upload.php
988行

function MG_deleteDir($dir) {
    if (substr($dir, strlen($dir)-1, 1) != '/')
        $dir .= '/';

    if ($handle = opendir($dir)) {
       while ($obj = readdir($handle)) {
           if ($obj != '.' && $obj != '..') {
               if (is_dir($dir.$obj)) {
                   if (!deleteDir($dir.$obj))
                       return false;
               } elseif (is_file($dir.$obj)) {
                   if (!unlink($dir.$obj))
                       return false;

青字部分を

                   if (!rmdir($dir.$obj))

に変更してください。

参考記事

コメント (0件)


Geeklog実験室
http://geeklogtest.maryn.jp/article.php/20071022204652292