練炭ブログ

萌え壁紙、Irvine、DMonkey、Proxomitron などの情報を扱ってます。

Irvine: chunkデコードに失敗?

2 個のコメント»

下記サイトの画像を Irvine でダウンロードすると、途中でデータが破損して正しく表示されません。
(小さい画像は問題ありません。)

2015『C88夏コミ』新作アルバム Nostalgie :: SoundCouture

irvine_ng_photoviewer

Internet Explorer で保存したファイルと比較すると一部に違いがあります。

サーバからは Transfer-Encoding: chunked でデータが送信されてきますが、ダウンロードしたファイルには、chunk デコード時にブロックの頭に 0x0a が挿入されてその分末尾の1バイトが失われている、と思わしき領域がいくつかありました。

送信データそのものは正常で、IE 等のブラウザでは正常に表示されますし、common\http.dms の chunk デコード機能でも正常にデコードできます。

今のところ原因不明で、こちらの環境の問題かもしれないし、Irvine の chunk デコード機能のバグかもしれません。

Irvine のバグだとしたら今までに見つかってないのはおかしい気もしますが、長いデータでないと発生しない挙動ならありえるかも。
普通は chunk エンコードされるのは HTML データでかつ短いデータの上、HTML をダウンロードすることは割合としては少ないので。

このサイトは CMS の仕様で静的な画像ファイルも chunk エンコードしてしまうんでしょうね。

2 Responses

  1. こちらでも同じくデータが破損していました。
    ただ何度も試してみたところ破損してしまう場合と正常にダウンロードが完了する場合があるようです。
    ログは破損した場合でも正常な場合でも同じものでした。
    20回ほどDLした中で破損したのは7回で、破損した物のハッシュを算出してみましたが全て異なったものになりました。
    Irvine側のバグなのかサイト側の問題なのかよく分からないですね

  2. ありがとうございます。
    ひとまず環境依存ではないと分かって助かりました。

コメントを残す

メールアドレスが公開されることはありません。