Namazu-devel-ja(旧)


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

圧縮ファイルとバイナリファイルの判定ミス (namazu-bugs-ja#22)



Full_Name: 多田 泰徳
Version: namazu-2000-05-23
OS: FreeBSD 3.4-RELEASE
Submission from: (NULL) (133.1.207.65)


mknmz でインデックスを作る際,gzip で圧縮されたバイナリファイルがあると
途中でエラーが発生します.

こちらの環境は
FreeBSD 3.4-RELEASE
Perl5.005_03
Namazu-2000-05-23
です.

バグの再現方法
ここでは例として,gzip, bzip2 で圧縮したテキストファイルおよび ls コマン
ドのあるディレクトリをインデックスします.

% mknmz -V /tmp/src
@@ 設定ファイルを読み込み中:
@@ 対象の探索を開始: Fri May 26 22:04:01 2000
@@ 適合:        /tmp/src/ls.gz
@@ 適合:        /tmp/src/ls.bz2
@@ 適合:        /tmp/src/books.txt.gz
@@ 適合:        /tmp/src/books.txt.bz2
@@ 対象の探索を終了: Fri May 26 22:04:01 2000
@@ 対象ファイル数: 4 (走査性能: 経過秒: 1, ファイル/秒: 4.0)
@@   潜在: 4, 不許可: 0, 拒絶: 0, 除外: 0
@@   MTIME 古すぎ: 0, MTIME 新しすぎ: 0
4個のファイルがインデックス作成の対象として見つかりました
@@ モジュール: bzip2.pl
@@ Processing bzip2 file ... (using  '/usr/local/bin/bzip2')
1/4 - /tmp/src/books.txt.bz2 [text/plain]
@@ モジュール: gzip.pl
@@ Processing gzip file ... (using  '/usr/bin/gzip')
2/4 - /tmp/src/books.txt.gz [text/plain]
@@ モジュール: bzip2.pl
@@ Processing bzip2 file ... (using  '/usr/local/bin/bzip2')
@@ 未対応の形式 application/octet-stream
3/4 - /tmp/src/ls.bz2 はバイナリと思われるので無視します
@@ モジュール: gzip.pl
@@ Processing gzip file ... (using  '/usr/bin/gzip')
@@ モジュール: compress.pl
@@ Processing compress file ... (using  '/usr/bin/zcat')

zcat: stdin: not in gzip format
パイプ破壊

以上の通り,bzip2 で圧縮した ls コマンドは伸張後にバイナリファイルである
と判定されるのですが,gzip で圧縮したものはさらに伸張しようとしてエラー
となります.

以上報告いたします.