チケット #11455

Cannot extract a file と出て、解凍が失敗する
登録: 2007-12-03 17:21 最終更新: 2008-02-17 04:14

報告者:
担当者:
(未割り当て)
チケットの種類:
状況:
完了
コンポーネント:
(未割り当て)
マイルストーン:
(未割り当て)
優先度:
5 - 中
重要度:
5 - 中
解決法:
受領
ファイル:
1

詳細

例:
LHa: Error: Cannot extract a file "09KC294/09kc294.txt"
権限の問題かと思い、解凍ディレクトリを見ると、
dr-xr-xr-x 09KC294
となっている。

とりあえず、ディレクトリの場合には書き込み権限をつける
ように変更したパッチを作った。
(本当はどのように動作するべきか?を考えないで作ったの
で注意して下さい。)

# 普通に、windows上でディレクトリに読み取り専用属性をつ
けて書庫ファイルを作成しても上のエラーは出ないので、何
か特殊な事をしないと上記エラーは出ないのかもしれませ
ん。

チケットの履歴 (3 件中 3 件表示)

2007-12-03 17:21 更新者: yookee
  • 添付ファイル 2114: lhext.patch が付加されました
2008-01-05 03:44 更新者: arai
  • 解決法なし から 受領 に更新されました
コメント
Logged In: YES
user_id=2998

なるほど、以下のように再現しますね


% ls -ld foo foo/bar
dr-xr-xr-x 2 arai arai 4096 Jan 5 03:30 foo/
-rw-r--r-- 1 arai arai 0 Jan 5 03:30 foo/bar
% lha c foo.lzh foo
foo/ - Frozen(0%)
foo/bar - Frozen(0%)
% chmod u+w foo
% rm -rf foo
% lha x foo.lzh
LHa: Error: Cannot extract a file "foo/bar"

こういうとき、GNU tar をお手本にしてるのですが、
strace で見る限り0755でmkdirしてファイルを展開した後に
chmod しなおしてますね。

検討します。
2008-02-17 04:14 更新者: arai
  • チケット完了時刻2008-02-17 04:14 に更新されました
  • 状況オープン から 完了 に更新されました
コメント
Logged In: YES
user_id=2998

遅くなりましたが、r880 にて修正しました。

添付ファイルリスト

  • lhext.patch(429バイト)
    • lhext.cに対するパッチ

編集

ログインしていません。ログインしていない状態では、コメントに記載者の記録が残りません。 » ログインする