2024
0220
content-encoding
Content-Encoding 処理が input_stream と密結合だった。
unknown: html => {"type":"html","value":"<!-- truncate -->","position":{"start":{"line":4,"column":1,"offset":45},"end":{"line":4,"column":18,"offset":62}}}
わりと深く結合していて迂闊に変えると動かなくなる。
Content-Encoding
最低限 gz の動作を確保したい。
// Content-Encoding: gzip
enum CompressionType {
CMP_NOCOMPRESS = 0,
CMP_COMPRESS = 1,
CMP_GZIP = 2, // 👈 gz
CMP_BZIP2 = 3,
CMP_DEFLATE = 4,
CMP_BROTLI = 5,
};子プロセスで gzip -d している。 ライブラリで組込むとすると zlib でできるようだ。 Windows に対応に備えて組み込んでみようかしら。
https://stackoverflow.com/questions/1838699/how-can-i-decompress-a-gzip-stream-with-zlib
open_pipe_rw デバッグむずい。
fork したプロセスが終了するときに、 シングルトンの destructor が誤爆する事故が発生。 アプリの終了処理で一時ファイルが削除されていた。 むずい。