Namazu-devel-ja(旧)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: lha フィルタ



臼田です

zipフィルタを少しだけ修正しcommitしました。

Yukio USUDA wrote:

> ・圧縮ファイルは小さいが、展開後に著しく大きくなるものがある
>  → 現状では gzip, compress, bzip2 の各フィルタでは伸張後のファイルを
>    読み込む前にサイズチェックしているので同じように読込む前にチェック

同様の処理を入れてみました。

> ・書込み禁止属性がついたファイルが展開された場合も処理後に消すこと

書込許可がないファイルもunlinkで消せるようでしたが
ディレクトリに書込許可がないと中のファイルは消せないようなので
展開後のディレクトリに対してchmodをすることにしました。


下記のようなファイルを作ってテストをしています

$ unzip -l tests/data/ja/zip2.zip
Archive:  tests/data/ja/zip2.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
        0  05-01-04 12:25   tmp/test_data/
This is a comment.
        0  05-01-04 12:23   tmp/test_data/1/
This is second comment for dir1.
    23552  05-01-04 12:23   tmp/test_data/1/powerpoint2002.ppt
This is third comment for ppt.
        0  05-01-04 12:24   tmp/test_data/2/
This is 4th comment for dir2.
      386  05-01-04 12:24   tmp/test_data/2/html.html
This is 5th comment for html.
 --------                   -------
    23938                   5 files

$ unzip -d tmpdir  tests/data/ja/zip2.zip
$ ls -lR tmpdir
tmpdir:
合計 4
drwxr-xr-x    3 yukio    yukio        4096 May  1 16:48 tmp/

tmpdir/tmp:
合計 4
drwxr-xr-x    4 yukio    yukio        4096 May  1 12:25 test_data/

tmpdir/tmp/test_data:
合計 8
drwxr-xr-x    2 yukio    yukio        4096 May  1 12:23 1/
dr-xr-xr-x    2 yukio    yukio        4096 May  1 12:24 2/

tmpdir/tmp/test_data/1:
合計 24
-r--r--r--    1 yukio    yukio       23552 May  1 12:23 powerpoint2002.ppt

tmpdir/tmp/test_data/2:
合計 4
-rw-r--r--    1 yukio    yukio         386 May  1 12:24 html.html


mknmz -O で出力先を絶対パスにしたときはうまくいくのですが
出力先を相対パスにすると zip.plから呼ばれたpowerpoint.plの途中でエラーがでます。
tests/data/ja/lha.lzh を処理中の lha.pl でも同様のエラーがでます。
原因は現在調査中です。
@@ モジュール: powerpoint.pl
@@ Processing powerpoint file ... (using  '/usr/bin/pptHtml')
// tmpnam: tests/idx00/NMZ.powerpoint.tmp
// 一時ファイルを削除:
mknmz: > tests/idx00/NMZ.powerpoint.tmp: そのようなファイルやディレクトリはありません


臼田幸生